Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

The Mit's Blog

En plus d'intégrer et skier, il sait même écrire !
(Blog de Renaud Comte)

Actualités


  • Ancien MVP SharePoint 8 ans ...
    Des projets .Net, SharePoint 2013 ou Office 365 ??

    Contactez-nous :

Archives

TechEd 2006 : PreConf act 3

Je reste dans ma mouvance SharePoint, tout en essayant de rester focus (ils sont bons les Donuts Redo , moi je les aime bien en tout cas)

Ce coup ci, on change de registre : Pages & Ghosting

Comme vous le savez, le Ghosting est un outil de cahce de SharePoint permettant de monter en mémoire les pages web types pour améliorer grandement le temps de rendu.

Bref, il faut privilégier le ghosting et non l'unghosting

La bonne nouvelle est que MOSS 2007 offre désormais moultes outils pour favoriser le Ghosting

  • Le type Ghostable dans une feature
    >>> le tag Module permet de simplement d'ajouter des pages d'une feature dans un site existant tout en demandant de les rendre Ghostable (et donc aussi les centraliser plutot que d'en faire N copies dans tous vos sites)
     
  • Un modéle objet vous permettant d'iterer et de trouver aisement vos page unghosté
    >>> Ted Pattison nous a montré justement une custom feature tout simple qui affiche sous un treeview une représentation simple d'un SPWeb en affichant tout ses composants avec leur états ghosté ou non
    NICE non ?
     
  • Et bien sur la possiblité de RE-ghoster.
    >>> Et oui, on peut désormais assurer une remise en cache des vos sites donc plus de grand soucis (on sent la prochaine feature associé à la démo de Treeview non ?)

 

Les WebPartPages sont aussi un "gros morceau"

Elles aussi fonctionnent comme de simple pages ASP.Net : On peut les customiser mais elles gardent la possibiliter d'être personnaliser avec des WebPArt coté utilisateur à pouvoir.

Cependant, elles peuvent être ghostés !
>>> A noter la notion de name et d'url. Un seul fichier peut servir de cache pour divers instance de ghost en tant que module.

Genre  Name=WPpage.aspx puis url=WPP01.aspx, url = WPP02.aspx et ainsi de suite
(Trés bon à connaitre non ?)

Une nouveauté dans le cas des WP pages, qui assure quand même une grande partie du framework Web de SharePoint associé à la notion de Master Page, est la capacité de les manipuler aisement via le code.

Page.GetLimitedWePartManager

Il suffit ensuite de créer des instances de vos divers WebParts et de les ajouter rapidement via le LimitedWebPartManager.

>>> La grande astuce : combiner du code dans un Receiver, l'upload ghostable de vos page dans un site via une feature et vous obtenez une joli méthodo pour déployer rapidement un ensemble de WPP dans un site existant avec leur propres WP et paramétré de surcroit. hum hum, ca me plait beaucoup !!! (et oui, imaginez si la Feature est de type Site ou Farm, et la c'est l'ensemble de vos sous sites WEB SharePoint que vous updatez et le tout TRES proprement !)

 

Mais qui dit Page dans Asp.Net ne peut passer à coté de la notion même de Master Page non ? 

Les MP sont effectivement au coeur du rendering SharePoint.

Il existe différentes modéles de MP comme la default.master ou l'aplication.master mais rien ne vous empéche d'ajouter vos propre Feature. Le plus simple reste de customiser la default (ca peut aider, elle ne sont pas si légéres).

A noter que si un ContentPlaceHolder vous géne comme celui qui contient le menu QucikLaunch, il vous suffit simplement d'implement un ContentPlaceHolder du même nom dans votre WPpage pour ecrase le render prévu de votre master. Localement, ca peut rendre de grand service, croyez moi

A noter aussi qu'il n'y a rien de plus simple que d'ajouter un User Control dans ce cas la. Soit directement dans votre page aspx, votre WP page ou pourquoi pas dans la Master Page . Un simple register et prefix pour votre dll et votre fichier ascx dans l'entete de la page et voila !

En ce qui concerne l'application même d'une MP, il s'agit de 2 simples lignes de codes

web.MasterUrl = path;
web.Update();

>>> Ensuite rien ne vous empéche de parcourir la collection des sous sites et d'appliquez la même master
(tiens tiens, on dirait mon petit projet Master Picker non ? )

 

Un dernier point : les Delegates Controls

Si vous avez déja exploré un Master Page, vous avez peut être aperçu quelques controles dit Delegates ...
Hum hum mais kezako les Delegates controls

Vous avez par exemple le Delegate SmallSearchInputBox.

>>> Les delegates sont une sorte de wrapper génériques permettant d'implementer dynamiquement en lieu et place un control.
Une sorte de mini SmartPart à la sauce Microsoft en fait

Ainsi le SmallSearchInputBox est juste une sorte d'ancre de positionnement d'un future control de recherche reposant sur un petit user control ASCX.

Grace à ces Delegates controls, un feature peut facilement substituer des controles natives de SharePoint via activation (et désactivation) comme remplacer le quicklaunch menu ou la search box

Substitution quand tu nous tiens ...

Bien sur rien ne vous empéche de créer vos propres ancres, pardon Delegates dans vos pages SharePoint en vue d'une futur personnalisation

.......

Oh la la que de contenu dans cette pré conférence ....

.......

Il n'y a pas à dire cette session est vraiment, SharePoitement parlant, passionnante.

Pas franchement de nouveauté, mais le design complet commence à se réveler et devient vraiment parlant. On arrive tranquillement mais surement aux Best Practices en terme de Developpement et de Deployement

Eh oui, il y a un monde du développement derriére SharePoint, et pas si petit car au final :

  • C'est de l'ASP.NEt 2.0 ni plus ni moins (et viva les UCs ou autre Master Page)
  • Il y a aussi WF, il ne faut pas l'oublier

Le tout à la sauce "Plateforme SharePoint" evidemment.

 

 Renaud Comte aka TheMit (ASP.netien ascendant SharePoint)

Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :
Posted: lundi 6 novembre 2006 17:11 par themit
Classé sous :

Commentaires

Pas de commentaires

Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- Merci par Blog de Jérémy Jeanson le 10-01-2019, 20:47

- Office 365: Script PowerShell pour auditer l’usage des Office Groups de votre tenant par Blog Technique de Romelard Fabrice le 04-26-2019, 11:02

- Office 365: Script PowerShell pour auditer l’usage de Microsoft Teams de votre tenant par Blog Technique de Romelard Fabrice le 04-26-2019, 10:39

- Office 365: Script PowerShell pour auditer l’usage de OneDrive for Business de votre tenant par Blog Technique de Romelard Fabrice le 04-25-2019, 15:13

- Office 365: Script PowerShell pour auditer l’usage de SharePoint Online de votre tenant par Blog Technique de Romelard Fabrice le 02-27-2019, 13:39

- Office 365: Script PowerShell pour auditer l’usage d’Exchange Online de votre tenant par Blog Technique de Romelard Fabrice le 02-25-2019, 15:07

- Office 365: Script PowerShell pour auditer le contenu de son Office 365 Stream Portal par Blog Technique de Romelard Fabrice le 02-21-2019, 17:56

- Office 365: Script PowerShell pour auditer le contenu de son Office 365 Video Portal par Blog Technique de Romelard Fabrice le 02-18-2019, 18:56

- Office 365: Script PowerShell pour extraire les Audit Log basés sur des filtres fournis par Blog Technique de Romelard Fabrice le 01-28-2019, 16:13

- SharePoint Online: Script PowerShell pour désactiver l’Option IRM des sites SPO non autorisés par Blog Technique de Romelard Fabrice le 12-14-2018, 13:01