Visual Studio 2010
TechDays 2012 – Ask The Expert
C’est avec une grande joie que je serai présent aux TechDays 2012 en tant qu’ATE (Ask-The-Expert) dans le pôle Efficacité Collective et Individuelle .
De plus je serai aussi sur le stand Communautaire ExiaMS (http://www.exiams.fr/).
@bientôt
Sharepoint 2010 – Debug Overview
Dans ce billet j’ai eu envie de partager un aperçu de l’ensemble des outils qui existent sous Visual Studio 2010 et Sharepoint 2010.
Pour ce faire nous allons expliquer les différents outils disponible sur Sharepoint puis ceux sur Visual en tant qu’add-on qui nous permettra d’automatiser nos tâches.
Developer Dashboard
Réel tableau de bord destiné à récupérer des informations relatives à l’exécution des pages celui-ci s’active de plusieurs façon :
- STSADM
- Activation: stsadm -o setproperty -pn developer-dashboard –pv on
- Désactivation: stsadm -o setproperty -pn developer-dashboard –pv off
- A la demande: stsadm -o setproperty -pn developer-dashboard –pv ondemand
- PowerShell
$srv = [Microsoft.SharePoint.Administration.SPWebService]::ContentService
$setting =$srv.DeveloperDashboardSettings
$setting.DisplayLevel = [Microsoft.SharePoint.Administration.SPDeveloperDashboardLevel]::OnDemand
$setting.Update()
- .Net Code
using Microsoft.SharePoint.Administration; SPDeveloperDashboardSettings mydashboard = SPWebService.ContentService.DeveloperDashboardSettings; mydashboard.DisplayLevel = SPDeveloperDashboardLevel.OnDemand; mydashboard.Update();
- Feature ( à prendre ici : Developer Dashboard Features )
Depuis General Application Settings > Developer Settings
Ainsi vous aurez des options disponibles :
- Display mode (On, Off, On Demand)
- Auto Launch du Developer Dashboard quand il y a détection d’évènement critique
- Autoriser ASP.NET à sortir le tracing des opérations
- Configurer la quantité maximum des requêtes SQL tracées
- Configurer la quantité maximum des évènement critiques tracées
- Permissions sur la vue du Developer Dashboard (Full, None or Custom)
- Dashboard Visualizer ( téléchargeable ici : Dashboard Visualizer)
- Cet outil vous permettra d’avoir une visibilité graphique de vos activités
SPMonitoredScope
Cette classe permet aux développeurs de désigner ( d’encapsuler) des portions de leur code en vue de surveiller les statistiques d’utilisation dans les journaux du service ULS et dans le tableau de bord du développeur. Cependant il n’est pas disponible dans les solutions Sandboxed.
using (SPMonitoredScope scope = new SPMonitoredScope (“My Monitored Scope”))
{
// Code pour monitoring
}
Vous avez aussi la possibilité de créer plusieurs Scope dans un Scope principal.
using (new SPMonitoredScope(“My Monitored Scope”))
{
Controls.Add(new Literal { Text = “When the awesomeness is flying… ” });
using (new SPMonitoredScope(“My Sub-Monitored Scope”))
{
Controls.Add(new Literal { Text = “there’s no stopping it! ” });
using (new SPMonitoredScope(“My Sub-Sub-Monitored Scope”))
{
Controls.Add(new Literal { Text = “<br/>I’m three levels deep!” });
}
using (new SPMonitoredScope(“Another deep scope”))
{
Controls.Add(new Literal { Text = “Rock and rumble, rock and rumble” });
}
}
}
Cela aura pour effet d’être automatiquement repris pas le Developper Dashboard comme ci-dessous :
Web.Config
Le fichier Web.Config peut lui aussi s’avérer utile afin de d’avoir plus d’informations que ne donne Sharepoint. Cela permet en outre d’avoir une visibilité par exemple sur l’existence d’une page ou non et de savoir si nous nommes confrontés à une erreur 404 ou non.
- Localisation des fichiers
- Root Folder : Local_Drive:InetpubwwwrootwssVirtualDirectoriesxxx
- Pour les Web Parts : Local_Drive:Program FilesCommon FilesMicrosoft SharedWeb Server Extensionswpresources
- Servers Virtuels étendus : Local_Drive:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions14CONFIG
- Pour le /_vti_bin : Local_Drive:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions14ISAPI
- Pour le /_layouts : Local_Drive:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions14TEMPLATELAYOUTS
- Administration Centrale : Local_Drive:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions14TEMPLATEADMINLocale_ID
- Options à modifier
- Callstack
- <system.web><customErrors mode=”On” /> à changé pour <system.web><customErrors mode=”Off” />
- CustomError
- <SharePoint><SafeMode … CallStack=”false” … > à changé pour <SharePoint><SafeMode … CallStack=”true” … >
- Debug
- <compilation batch=”false” debug=”false“> à changé pour <compilation batch=”true” debug=”true“>
- Asp.net tracing feature
- <system.web> <trace enabled=”true” pageOutput=”true“/>
Vous avez aussi la possibilité de passer le code en utilisant la classe SPWebConfigModification.
Unified Logging Service
Service de journalisation unifiée , ce mécanisme permet d’écrire les évènements de SharePoint Foundation dans le journal de suivi de SharePoint et les stocke dans le système de fichiers.
Localisation des LOGS : C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions14LOGS
Exécutable téléchargeable ici : ULSViewer
Ce logiciel vous permettra d’utiliser le correlation id des erreurs générés par Sharepoint et d’avoir une meilleure lisibilités des erreurs.
Sharepoint met aussi à disposition une configuration de ses logs dans Administration Central > Monitoring > Configure diagnostic logging
Notons également qu’il vous est possible d’écrire du code ULS custom en héritant de la classe SPDiagnosticsServiceBase
Processus liés
Manipulation qui va de pair avec Sharepoint quand nous déboguons, vous pouvez attacher les processus avec Visual studio de plusieurs façons :
- Farms Solutions:
- W3WP.exe (IIS worker processes )
- OWSTimer.exe ( Office Web Server Timer) [ Timer job, email event receiver]
- Sandboxed Solutions
- SPUCWorkerProcess.exe
- Client
- Silverlight et Javascript sur iexplorer.exe
- Les breakpoints
Il existe d’autres façons de régler des problèmes de débogage en utilisant l’outil DebugViewer.exe (http://technet.microsoft.com/fr-fr/sysinternals/bb896647%28en-us%29.aspx) qui vous permettra en cas d’un breakpoint non fonctionnel d’avoir une analyse plus fine de la situation.
Voici quelques liens relatif à son utilisation avec Sharepoint :
Enfin vous avez aussi la possibilité d’ajouter une extension VSIX à Visual Studio 2010 qui vous permettra de bénéficier des attaches pour votre solution . Téléchargeable ici : http://spvsext.codeplex.com/
En conclusion nous pouvons dire que nous avons beaucoup d’outils et techniques permettant aux développeurs et aux administrateurs d’avoir de la visibilité dans la résolution de problèmes sous Sharepoint 2010.
SharePoint Online – Architecture de Déploiement
Faisant suite à l’article SharePoint Online – Tour d’Horizon il serait important de notifier l’architecture de déploiement d’une solution online qui se veut simplement différente d’une version On-Premises.
Développer pour le Online
Lorsque nous développons une solution pour le online nous sommes assez limités en termes d’accès physiques, c’est pourquoi afin de publier un package .WSP, vous serez obligé de passer
par la galerie de solutions de Sharepoint. Ajoutons de ce fait que compte tenu des limitations vous n’aurez accès qu’a la partie “Collection de Sites”. Ce qui amène à deux type de développement :
-
Solution en Bac a sable
-
Solution Client Object Model
Voici dans ce schéma l’architecture des deux types de développements autorisés
Outre le fait que vous trouverez des limites natives aux solutions sandbox et à l’incapacité de déployer ses paquets sur des sites distants, dans une architecture online il vous sera demandé de créer en premier lieu votre solution packagée en local puis de la déployer depuis l’interface proposée. Vous ne pourrez déboguer votre solution en mode Online. Une fois soumis il vous sera demandée de l’activée en veillant à la portée de celle-ci ( Manage Features)
Il vous sera aussi demandé de vérifier les espaces de noms appelés dans vos solutions sandbox sinon votre solution ne sera prise en charge.
SharePoint Online – Tour d’horizon
Dans ce billet nous voyons un petit tour d’horizon de Sharepoint Online. Dans un premier temps nous rappellerons les limites logicielles fixées, puis une partie dédiée à la comparaison des features entre la version On-Premises et Online, nous nous pencherons ensuite sur une liste des Services Web existant sur la plateforme Online et une partie sur les dernières upgrade du systèmes.
Grilles tarifaires
Voici deux grilles récapitulatives des limites relatives à Sharepoint Online.
Cette première grille est adaptée au petites entreprises:
Fonctionnalité |
Description |
Stockage (au total) | Base de stockage de 10 gigaoctets (Go) plus 500 mégaoctets (Mo) par utilisateur (50 maximum), ce qui donne un total de 35 gigaoctets (Go) |
Nombre maximal d’utilisateurs licenciés par client | 50 |
Nombre de collections de sites par client | Une collection de sites par client |
Total du stockage par client | Jusqu’à 35 gigaoctets (Go) par client |
Limite de téléchargement de fichier | 250 mégaoctets (Mo) par fichier |
Cette deuxième grille concerne les moyennes et grandes entreprises :
Fonctionnalité |
Description |
Stockage (au total) | Base de stockage de 10 gigaoctets (Go) plus 500 mégaoctets (Mo) par utilisateur de l’entreprise |
Stockage par travailleur Kiosk | Zéro (0). Pas d’allocation de stockage supplémentaire pour les travailleurs Kiosk sous licence |
Nombre maximal d’utilisateurs sous licence | 20 000 par client |
Espace de stockage supplémentaire (par Go par mois) ; aucun achat minimum requis | 2,50 $ par Go par mois |
Quotas de stockage par collection de sites | Jusqu’à 100 gigaoctets (Go) par collection de sites |
Allocation d’espace de stockage pour Mon site (ne compte pas dans l’espace de stockage total du client) | 500 mégaoctets (Mo) de stockage personnel pour Mon site (une fois configuré) |
Nombre de collections de sites par client | Jusqu’à 300 (collections de sites autres que Mon site) |
Total du stockage par client | Jusqu’à 5 téraoctets (To) par client |
Limite de téléchargement de fichier | 250 mégaoctets (Mo) par fichier |
Features Online et On-Premises
Maintenant que nous sommes au fait des différences tarifaire du produit Online, penchons nous un peu plus sur les différences des “Features” entre la version On-Premises et Online :
Features | Online | On-Premises |
Configuration du Navigateur | Disponible | Disponible |
Modification avec le Sharepoint Designer | Création d’interfaces de données riches
Configuration des processus métiers à travers les workflow Connexion au données interne et externe de Sharepoint Design et Branding (Options) |
Création d’interfaces de données riches
Configuration des processus métiers à travers les workflow Connexion au données interne et externe de Sharepoint Design et Branding (Options) Business Connectivity Services |
Solutions Sharepoint | Solutions bac à sable |
Solutions de Fermes Solutions bac à sable |
Client Object Models |
Silverlight .NET Framework JavaScript |
Silverlight .NET Framework JavaScript |
Web Part Silverlight | Disponible | Disponible |
Web Services |
Limitations des Web Services Sharepoint REST API Excel Services REST API |
Ensemble des Web Services Sharepoint REST API Excel Services REST API |
Formulaires InfoPath |
Formulaire de solutions bac à sable |
Formulaire de solutions bac à sable Formulaire Administratif |
Workflow |
Déclaratif Flux d’activités de solutions bac à sable |
Déclaratif Flux d’activités de solutions bac à sable |
Web Services disponibles
Après avoir émis un point de comparaison sur plusieurs points essentiels de la plateforme Sharepoint 2010, il apparait évident qu’il est nécessaire de mettre en évidence les Web Services disponibles dans Sharepoint Online. Si vous souhaitez avoir des informations sur les Web Services autre que ceux onlines : http://msdn.microsoft.com/fr-fr/library/ee705814.aspx
Service Web | Path | Description |
Alertes | /_vti_bin/alerts.asmx | Fournit des méthodes permettant d’utiliser des alertes pour des éléments de liste dans un site SharePoint Online. |
Copie | /_vti_bin/Copy.asmx |
Fournit des méthodes pour :
|
Espace de travail du document | /_vti_bin/DWS.asmx | Fournit des méthodes permettant de gérer les sites d’espace de travail du document et les données qu’ils contiennent. Remarque : La méthode FindDwsDoc du service Espace de travail du document n’est pas disponible dans SharePoint Online. |
Imagerie | /_vti_bin/Imaging.asmx | Fournit des méthodes qui vous permettent de créer et de gérer des bibliothèques d’image. |
Listes | /_vti_bin/Lists.asmx | Fournit des méthodes permettant d’utiliser les listes et les données de liste. Remarque : La méthode AddDiscussionBoardItem du service Web Listes n’est pas disponible dans SharePoint Online. |
Réunions | /_vti_bin/Meetings.asmx | Fournit des méthodes qui vous permettent de créer et de gérer des sites d’espace de travail de réunion. |
Personnes | /_vti_bin/People.asmx | Fournit des méthodes permettant d’utiliser les groupes de sécurité. |
Autorisations | /_vti_bin/Permissions.asmx | Fournit des méthodes permettant d’utiliser les autorisations associées à un site ou à une liste. |
Données du site | /_vti_bin/SiteData.asmx | Fournit des méthodes qui renvoient des métadonnées ou des données de liste à partir de sites ou de listes. |
Sites | /_vti_bin/sites.asmx | Fournit des méthodes qui permettent de retourner des informations sur les modèles de sites associés à une collection de sites. |
Recherche | /_vti_bin/spsearch.asmx | Fournit des méthodes qui permettent d’effectuer des recherches à distance au sein d’un déploiement SharePoint Online. |
Utilisateurs et groupes | /_vti_bin/UserGroup.asmx | Fournit des méthodes qui permettent de travailler avec les utilisateurs, les groupes de sites et les groupes intersites. |
Versions | /_vti_bin/versions.asmx | Fournit des méthodes permettant d’utiliser les versions de fichier. |
Affichages | /_vti_bin/Views.asmx | Fournit des méthodes permettant d’utiliser des affichages de listes. |
Pages de composants WebPart | /_vti_bin/webpartpages.asmx |
Fournit des méthodes permettant d’utiliser les composants WebPart.
|
Sites Web | /_vti_bin/Webs.asmx | Fournit des méthodes permettant d’utiliser les sites et les sous-sites. Remarque : La méthode CustomizeCss du service Web Sites Web n’est pas disponible dans SharePoint Online. |
Service de publication | /_vti_bin/PublishingService.asmx |
Fournit des méthodes permettant d’utiliser à distance le service de publication.
|
Online Upgrade
Ces derniers jours un upgrade des fonctionnalités à été publié et sera implémenté dans la version Online :
Feature | Description |
Business Connectivity Services (BCS) <WCF Connector> | Mise en place de connexion externes via les web services |
Partage Externe : Windows LiveID support | Permet aux administrateurs d’Office 365 d’inviter des utilisateurs extérieurs. Authentification via le LiveID |
Windows Phone 7 "Mango" | Support des WP7 pour l’accès à Sharepoint Online pour les Listes et des Bibliothèques de Documents |
Corbeille | Capacité de restauration des collections de sites depuis la corbeille |
Navigateurs | IE 9 et Chrome |
ATE Microsoft TechDays 2011
Salut à tous,
J’ai été retenu par Microsoft pour être ATE ( Ask the Expert ) sur le stand Visual Studio 2010, pour les TechDays 2011.
Rappel : un ATE est un expert reconnu sur un produit ou une techno, dans mon cas , VS 2010, reconnaissable avec un T-shirt spécifique.
Si vous avez des questions n’hésitez pas! Vous savez où me trouver.
A bientôt !