Modèle de traitement des pages
Dernière modification : jeudi 15 avril 2010
S’applique à : SharePoint Server 2010
Microsoft SharePoint Server 2010 est un système de rendu de page basé sur des modèles. Les deux modèles fondamentaux utilisés pour le rendu de page dans les sites SharePoint sont les pages maîtres et les mises en page. Les pages maîtres peuvent être utilisées par toutes les instances de page d’un site. Les mises en page peuvent être utilisées par toutes les instances de page qui sont basées sur cette mise en page. Les mises en page sont stockées en tant qu’éléments de liste dans la galerie des pages maîtres et des mises en page ; vous pouvez donc utiliser la gestion des versions, l’archivage et l’extraction, les flux de travail et d’autres fonctionnalités disponibles pour les bibliothèques de documents SharePoint.
SharePoint Server 2010 est basé sur Microsoft SharePoint Foundation 2010 et sur Microsoft ASP.NET 2.0. Le moteur ASP.NET interprète et exécute toutes les demandes de pages SharePoint. Supposons par exemple qu’un utilisateur demande une page appelée bienvenue.aspx dans le navigateur. Le moteur ASP.NET extrait la mise en page associée à la page et la page maître associée au site via l’objet SharePoint Foundation 2010 FileProvider. Il affiche également les contrôles des champs et les composants WebPart des champs sur la page. La Figure 1 montre le modèle de traitement des pages dans SharePoint Server 2010.
Figure 1. Modèle de traitement des pages dans SharePoint Server 2010
Le modèle de traitement des pages
La liste suivante décrit la façon dont ASP.NET et SharePoint Foundation interagissent pour rendre des pages dans un site SharePoint :
Le navigateur demande une page Web aux services IIS (Internet Information Services) de Microsoft.
IIS passe la demande à ASP.NET.
Un pipeline HttpApplication est créé pour la demande.
ASP.NET extrait la page via le fournisseur de fichiers de SharePoint Foundation. ASP.NET passe l’URL au fournisseur de fichiers, et celui-ci extrait la page et renvoie le flux de la page. Le fournisseur de fichiers SharePoint Foundationimplémente la mise en cache et réduit les allers-retours vers la base de données.
ASP.NET charge une classe Page, analyse le flux de la page et recherche une référence à la page de contenu sur laquelle la page est basée.
Le moteur ASP.NET compile le flux de la page et le stocke en mémoire.
ASP.NET émet une requête pour obtenir la page de contenu auprès du fournisseur de fichiers SharePoint Foundation.
ASP.NET charge le flux pour la mise en page associée à la page courante.
ASP.NET compile la mise en page et la stocke en mémoire. ASP.NET peut libérer cette mémoire ultérieurement si le système a besoin de mémoire.
ASP.NET détermine la page maître pour le site et extrait cette page via le fournisseur de fichiers SharePoint Foundation.
ASP.NET compile la page maître et écrit le résultat sur le disque ; ainsi, vous n’avez pas besoin de recompiler la page maître, sauf si vous la modifiez.
La page de contenu exécute chaque contrôle sur la page dans le contexte de la page qui a été demandée.
ASP.NET met à jour les caches nécessaires.
IIS renvoie la page au navigateur.
Quand la page est demandée à nouveau par le même utilisateur ou par un autre utilisateur qui a les mêmes autorisations pour voir la page comme le premier utilisateur, le traitement de la page est beaucoup plus efficace :
Le navigateur demande une page Web à IIS.
IIS passe la demande à ASP.NET.
Un pipeline HTTPApplication est créé pour la demande et appelle l’élément HandleRequest.
ASP.NET utilise tous les caches internes.
ASP.NET effectue le rendu du code HTML pour les contrôles.
IIS renvoie la page au navigateur.
Notes
Même si ce processus prend peu de temps, ASP.NET effectue à chaque fois le rendu des contrôles. Si vous ne souhaitez pas que les contrôles soient rendus systématiquement, vous pouvez activer la fonctionnalité de mise en cache de sortie de page d’ASP.NET.
Voir aussi
Tâches
Procédure : étendre la mise en cache à l'aide du gestionnaire d'événements VaryByCustom
Concepts
Vue d'ensemble de la mise en cache personnalisée
Mise en cache de sortie et profils de cache