Una web part è un'unità modulare di informazioni che assolve a una funzione specifica e rappresenta il blocco costituente di una pagina web part. In realtà una web part è costituita da due file di base, spesso richiede altri file di risorse e i valori delle sue proprietà sono memorizzati in tabelle di database. Sapere come funzionano le web part può essere utile per trovare possibilità di utilizzo e condivisione più interessanti e più creative, nonché per evitare problemi.
Informazioni generali sulla progettazione di web part
Nell'illustrazione seguente, in cui viene utilizzata la web part Immagini come esempio, è sintetizzata la struttura delle web part.

1 Il file di descrizione della web part Immagini (con estensione dwp) è un contenitore portatile di valori di proprietà predefiniti e personalizzati per la web part Immagini.
2 Il file assembly della web part Immagini (con estensione dll) contiene la logica e il codice per la web part Immagini ed è installato nel server del sito.
3 Anche i file di risorse che supportano la web part Immagini sono memorizzati nel server del sito.
4 Le tabelle del database di Windows SharePoint Services vengono utilizzate per memorizzare valori correnti delle proprietà della web part Immagini.
Per quanto riguarda l'architettura delle web part è importante comprendere due concetti fondamentali:
File di descrizione della web part (con estensione dwp)
Il file di descrizione della web part è un file di testo XML con estensione dwp e può contenere:
Di seguito è riportato, ad esempio, il file di descrizione della web part Immagini:
<?xml version="1.0" encoding="utf-8"?>
<WebPart xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://schemas.microsoft.com/WebPart/v2"> (1)
<Title>Image Web Part</Title>
<FrameType>Default</FrameType>
<Description>Use to display pictures and photos.</Description>
<IsIncluded>true</IsIncluded>
<ZoneID>LeftColumn</ZoneID>
<PartOrder>1</PartOrder>
<FrameState>Normal</FrameState>
<Height /> (2)
<Width />
<AllowRemove>true</AllowRemove>
<AllowZoneChange>true</AllowZoneChange>
<AllowMinimize>true</AllowMinimize>
<IsVisible>true</IsVisible>
<DetailLink />
<HelpLink />
<Dir>Default</Dir>
<PartImageSmall />
<MissingAssembly />
<PartImageLarge>/_layouts/images/msimagel.gif</PartImageLarge> (3)
<IsIncludedFilter />
<Assembly>Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral,
PublicKeyToken=71e9bce111e9429c</Assembly>
</WebPart> (1)1 L'elemento WebPart identifica questo codice XML come file di descrizione di una web part e contiene gli altri elementi del file.
2 Se il valore della proprietà è vuoto, la web part utilizza i valori predefiniti memorizzati nelle tabelle di database.
3 Se il valore della proprietà non è vuoto, per questa istanza della web part il valore predefinito viene ignorato e viene utilizzato il nuovo valore.
Spesso durante la prima installazione di Windows SharePoint Services nella raccolta web part del sito viene memorizzato un file di descrizione di web part. Nel tempo vengono create altre istanze di questo file, man mano che gli utenti esportano web part e gli amministratori del sito caricano e scaricano web part.
File assembly della web part (con estensione dll)
Il file assembly della web part è un file della libreria a collegamento dinamico (DLL, Dynamic Link Library) di ASP.NET e contiene la logica e il codice della web part. È associato al file di descrizione della web part. Tuttavia, esiste un solo file assembly per tutte le istanze di una web part in un sito. Il file assembly contiene codice gestito che deriva dal controllo di modulo web (def) di ASP.NET. Il codice gestito è essenziale per il funzionamento della web part, in quanto una pagina web part è una pagina web di ASP.NET (con estensione aspx).
Durante l'installazione di Windows SharePoint Services, nel server del sito viene installato il file assembly di ogni web part. Nel tempo l'amministratore del sito può installare altre web part personalizzate. Inoltre, nelle cartelle di sistema del server del sito vengono installati gli eventuali file di risorse richiesti dalla web part, quali file di immagini, file di altre lingue e altri file ausiliari. Per garantire la sicurezza di una web part, l'amministratore del sito deve registrarla come controllo sicuro.
Molte web part presentano anche proprietà personalizzate univoche. In genere, nel riquadro Strumenti queste proprietà sono visualizzate prima o dopo le proprietà comuni. La web part Immagini, ad esempio, ha proprietà personalizzate aggiuntive, fra cui il collegamento all'immagine, l'allineamento orizzontale e verticale e il colore di sfondo.
Nota A seconda di come la web part è stata creata, le proprietà personalizzate possono venire visualizzate nel riquadro Strumenti nella sezione Varie, dopo le proprietà comuni.
Esistono tre tipi di web part. Un'istanza di una web part può essere classificata come:
Web part condivisa Web part aggiunta a una pagina web part da un utente che sta creando o modificando la pagina web part nella visualizzazione condivisa. Le web part condivise sono disponibili per tutti gli utenti di una pagina web part che dispongono dell'autorizzazione appropriata.
Web part personalizzata Web part condivisa in cui uno o più valori di proprietà sono stati modificati da un utente che ha apportato modifiche alla web part nelle visualizzazione personale. Le modifiche apportate alla web part personalizzata sono disponibili solo per l'utente che le ha apportate. Gli altri utenti che non hanno apportato modifiche nella visualizzazione personale continuano a vedere la web part condivisa.
Web part privata Web part che un utente ha aggiunto a una pagina web part da una raccolta web part o che ha importato da un computer mentre creava o modificava la pagina web part nella visualizzazione personale. Le web part private sono disponibili solo per l'utente che le ha aggiunte o importate e non possono essere viste da nessun altro utente.
Conoscere il tipo di web part su cui si sta lavorando può essere importante per i seguenti motivi:
Vantaggi dell'architettura delle web part
L'architettura delle web part, che prevede la separazione delle istanze del file di descrizione della web part (con estensione dwp) dal file assembly della web part (con estensione dll), presenta vantaggi importanti.
Facilità di condivisione Gli utenti possono personalizzare le web part con facilità, senza interferire con le istanze della stessa web part di altri utenti. Gli utenti e gli amministratori del sito possono condividere facilmente le istanze delle web part inviando il file di descrizione della web part tramite posta elettronica oppure trasferendo le web part in altre raccolte del sito.
Facilità di spostamento Uno dei vantaggi principali del file di descrizione della web part è rappresentato dalle dimensioni ridotte, che ne semplificano il trasporto e la duplicazione. Quando si esporta, importa, scarica o carica una web part, il file interessato in realtà è il file di descrizione della web part.
Prestazioni Dal momento che il file assembly della web part è codice precompilato, l'esecuzione della pagina web part risulta velocizzata, perché la pagina web part non deve interpretare codice e logica estesi. Inoltre, dal momento che è sufficiente installare un solo file assembly, gli amministratori del sito possono avvalersi di procedure molto semplici per controllare una o più web part, affinché nessun utente o pagina web part consumi troppe risorse del sistema.
Scalabilità Le proprietà delle web part sono memorizzate in tabelle di database, quindi molti utenti possono condividere le web part e creare molte istanze delle web part senza effetti negativi a livello di prestazioni generali del sistema. È possibile, inoltre, bilanciare il carico di lavoro o semplificare l'installazione delle web part sviluppando un file pacchetto (con estensione cab) delle web part e distribuire le web part in una raccolta web part sul server virtuale.
Protezione Utilizzando i gruppi del sito e i diritti standard di Microsoft Windows SharePoint Services, l'amministratore del sito può stabilire chi può accedere a una pagina web part, visualizzare o modificare i dati della web part Visualizzazione elenco, personalizzare la pagina web part, aggiungere o eliminare web part o modificare proprietà delle web part. L'amministratore del sito può stabilire, inoltre, quali web part possono essere installate in un sito e se possono essere eseguite o meno nel sito in questione.
Manutenzione Gli amministratori del sito possono stabilire con facilità quali web part possono essere eseguite in un sito, controllando l'installazione del file assembly della web part. Inoltre, se una web part deve essere modificata o se diventa disponibile una nuova versione con più funzionalità, gli amministratori devono installare solo il nuovo file assembly ed eventualmente i nuovi file di risorse per tutte le istanze della web part.
Informazioni sull'importazione e sull'esportazione di web part
Le web part sono state progettate per poter essere esportate, trasportate e importate con estrema facilità. Quando si personalizza una web part o quando un amministratore del sito apporta una modifica a una pagina web part per tutti gli utenti, può essere utile condividerla con altri utenti del sito o addirittura di un altro sito. Ad esempio:
In ogni caso, affinché la web part possa essere eseguita nel nuovo sito, è essenziale che nel sito venga installato anche il file assembly della web part.
Nota Non è possibile esportare una web part Visualizzazione elenco. GLi elenchi sono specifici dei siti e non possono essere trasportati in altri siti come avviene per le altre web part. Se si desidera spostare dati di un elenco da un sito in un altro, è possibile esportare i dati dell'elenco dal sito, quindi importarli in un elenco nell'altro sito. A questo punto verrà aggiunta automaticamente una web part Visualizzazione elenco dei nuovi dati nella raccolta web part del sito.