Sharepoint 2010, come deploiare in maniera smart: Css e jQuery

In tutte le master page di default in un sito Sharepoint 2010 esiste il seguente delegate control:

<SharePoint:DelegateControl runat="server" 
          ControlId="AdditionalPageHead" 
          AllowMultipleControls="true"/>

Seguendo il link potete leggere dalle msdn cos’è un delegate control.

Velocemente, un delegate control è una feature di Sharepoint tramite la quale diciamo ad ASP.NET di trovare un determinato blocco di codice (il delegate control appunto) e inserire il nostro codice custom.

E’ un modo semplice e smart per inserire i nostri blocchi di codice senza bisogno di modificare le master page.

Realizzarne uno è molto semplice:

Creiamo un nuovo progetto empty (io ho scelto una soluzione non sandbox):

empty_project_19-07-2011_10-02-01

 

Inseriamo la folder mappata Controltemplates:

mapped_folder_19-07-2011_10-33-30

 

Aggiungiamo uno User Control dentro la folder mappata:

uc_19-07-2011_10-35-40

 

Inseriamo tutti i riferimenti del caso:

uc_markup_19-07-2011_10-38-06

 

ultimo tocco, aggiungiamo un riferimento:

empty_element_19-07-2011_10-31-37

 

e specifichiamo che è un delegate:

<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
    <Control Id="AdditionalPageHead"
     Sequence="90"
     ControlSrc="~/_CONTROLTEMPLATES/UserControl1.ascx" />
</Elements>

il risultato sarà questo:

delegate_control19-07-2011_10-39-46

 

Una volta deploiato e attivato sul nostro sito, verranno aggiunti automaticamente i riferimenti a jQuery e ai Css inserti nello User Control.

Ciao

Rebitting Tags: |