5 pagine in totale: <<Indietro 1 2 3 4 [5]
System.Web.UI.WebControls.WebParts. PersonalizationProvider
Le Web Part rappresentano una delle novità di ASP.NET 2.0 e offrono un meccanismo semplice per creare applicazioni modulari e facilmente personalizzabili. Una Web Part (classe WebPart contenuta nel namespace System.Web.UI.WebControls.WebParts) è un controllo che deriva indirettamente da Panel, ma che dispone di elementi di interfaccia aggiuntivi. Ciò che rende una Web Part più potente rispetto ad un controllo Panel è il supporto di cui gode da parte del Web Part Manager (classe WebPartManager), ovvero un controllo invisibile a runtime che gestisce le modalità di visualizzazione e il comportamento delle Web Part contenute in una pagina. Le Web Part vengono raggruppate in zone controllate dal Web Part Manager nell'ambito della pagina di appartenenza. Possiamo quindi pensare ad una pagina contentente Web Part come ad un aggregato di zone contenenti pannelli comandati dal Web Part Manager che ne regola le modalità di visualizzazione.
In taluni casi può risultare comodo lasciare agli utenti la possibilità di modificare e personalizzare l'interfaccia utente e il comportamento dell'applicazione. Le Web Part di ASP.NET 2.0 permettono di farlo tramite le funzionalità offerte dalla classe WebPartPersonalization, che consente di salvare le proprietà e lo stato dei controlli di tipo WebPart in modo permanente, anche tra più sessioni utente. A tale scopo la proprietà Personalization della classe WebPartManager fornisce accesso agli oggetti che memorizzano le impostazioni di personalizzazione e le persistono nell'ambito di uno storage di qualche tipo.
La struttura delle classi, le relazioni e la modalità di funzionamento rispecchiano quanto visto nell'articolo sul Provider Model. La classe statica PersonalizationAdministration fornisce i metodi e le proprietà per amministrare e gestire la personalizzazione delle Web Part. Sfruttando i metodi del tipo astratto PersonalizationProvider che funge da contratto per i Provider concreti derivati, la classe permette di gestire in modo completo lo stato della personalizzazione. Il Provider concreto SqlPersonalizationProvider rappresenta l'unica implementazione presente nel .NET Framework e permette di memorizzare le informazioni di personalizzazione su un database SQL Server.

Le impostazioni di configurazione relative alla personalizzazione sono contenute nella sezione relativa alle Web Part. La sottosezione di configurazione in questione è rappresentata dal nodo <personalization />.
<webParts>
<personalization>
<providers>
<add connectionStringName="LocalSqlServer"
name="AspNetSqlPersonalizationProvider"
type="System.Web.UI.WebControls.WebParts...
...SqlPersonalizationProvider, System.Web,
Version=2.0.0.0, Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a" />
</providers>
<authorization>
<deny users="*" verbs="enterSharedScope" />
<allow users="*" verbs="modifyState" />
</authorization>
</personalization>
<transformers>
<add name="RowToFieldTransformer"
type="System.Web.UI.WebControls.WebParts...
...RowToFieldTransformer" />
<add name="RowToParametersTransformer"
type="System.Web.UI.WebControls.WebParts...
...RowToParametersTransformer" />
</transformers>
</webParts>
Conclusioni
ASP.NET 2.0 sfrutta in modo significativo il Provider Model, fornendo tutta una serie di implementazioni predefinite. Molti dei Provider visti nell'articolo utilizzano principalmente SQL Server come sorgente dati. Esistono peraltro già adesso implementazioni custom per i principali DBMS in commercio ed, in particolare, per quelli più utilizzati dalle aziende specializzate nella fornitura di servizi di hosting: Access e MySql. Anche Oracle sta lavorando per produrre una propria versione ufficiale, che, si presume, non tarderà ad uscire in tempi brevi.
La facilità con cui è possibile personalizzare i Provider per le varie API di ASP.NET 2.0 consente in ogni caso a tutti gli sviluppatori di creare le proprie customizzazioni con poco sforzo. Questo è possibile perchè, come si è visto, il modello si presta ad essere facilmente estendibile. Del resto i Provider sono componenti pluggabili relativamente semplici da realizzare, con pochi metodi e proprietà. L'applicazione più frequente dei Provider è quella che si riferisce alla creazione di layer di accesso ad una sorgente dati in modo indipendente dal contesto di chiamata. In questo scenario diventa possibile migrare le applicazioni da un tipo di sorgente dati ad un'altra senza particolari difficoltà, limitando in modo significativo la quantità di codice da scrivere.
L'articolo sul Provider Model è disponibile qui: Il Provider Model di ASP.NET 2.0.
5 pagine in totale: <<Indietro 1 2 3 4 [5]
Contenuti dell'articolo
- Pagina 1
- Pagina 2
- Pagina 3
- Pagina 4
- Pagina 5
Per inserire un commento, devi registrarti alla nostra community.






Difficoltà
Stampa
Download 


