Tra tutti i modelli di sviluppo che si potrebbe adottare per estendere o integrare SharePoint, le WebPart rivestono sicuramente un ruolo di primo piano, grazie soprattuto alla possibilità, con semplici accorgimenti, di riutilizzare le WebPart sviluppate per ASP.NET.
A rendere ancora più allettante l'uso delle WebPart è la possibilità connetterle tra loro: alterando lo stato della WebPart "provider" andremo a influenzare lo stato della WebParte "consumer".
Allo scopo sviluppaimo due semplici WebPart: la prima visulizza una DropDownList con l'elenco delle categorie di prodotti di un ipotetico negozio, mentre l'altra invece visualizza l'elenco dei prodotti relativi alla categoria selezionata nella prima.
Senza dilungasi troppo sul codice necessario a creare le WebPart, che comunque trovate allegato, soffermiamoci sui due attributi che rendono possibile questa "magia".
ConnectionProviderAttribute serve a decorare il metodo GetCategory della nostra WebPart "provider", il quale verrà richiamato ogni qualvolta sia necessario "filtrare" la WebPart "consumer", che è decorata con l'attributo ConnectionConsumerAttribute.
[ConnectionProvider("Category")] public string GetCategory() { if (_categoryDropDownList.SelectedValue != "NF") { return _categoryDropDownList.SelectedValue; } else { return string.Empty; } }
Non rimane altro che decorare il metodo SetCategory della WebPart "consumer":
[ConnectionConsumer("Categery")] public void SetCategory(string category) { Category = category; }
A tutto il resto penserà SharePoint.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.