Membership/Role Provider: tool di gestione personalizzato

Ho appena trovato sul blog di Scott Guthrie un puntatore ad due ottimi articoli di tal Peter Kellner su come sviluppare una serie di pagine di gestione che utilizzano il componente di Membership/Role provider nativo di ASP.NET 2.0.

L'esempio usa ObjectDataSource per bindare le classi del default provider alle datagrid usate per la gestione: il problema principale è che non si può usare direttamente la classe Membership
 così come fornita dal Framework, quindi ha realizzato un wrapper che esponesse i metodi necessari per la creazione, l'aggiornamento e la selezione degli utenti presenti.

In particolare ho visto una caratteristica mai vista e che dovrò approfondire, cioè la definizione dell'interfaccia della classe wrapper usando degli attributi ad-hoc per ObjectDataSource:

 [DataObject(true)]
 
public class MembershipUserWrapper {
   [DataObjectMethod(DataObjectMethodType.Select, 
true)]
   
static public Collection<MembershipUserWrapper> GetMembers(string sortData) {
     
return GetMembers(truetruenull, sortData); 
   }
  
   [DataObjectMethod(DataObjectMethodType.Insert, 
true)]
   
static public void Insert(string UserName, bool isApproved, string comment, DateTime lastLockoutDate, …) {
10    }
11          
12    [DataObjectMethod(DataObjectMethodType.Delete, 
true)]
13    
static public void Delete(object UserName, string Original_UserName){
14      Membership.DeleteUser(Original_UserName, 
true);
15    }
16    
17    [DataObjectMethod(DataObjectMethodType.Update, 
true)]
18    
static public void Update(string original_UserName,string email,…){ 
19    }

Userò sicuramente questo trucco per implementare in Kea la gestione degli utenti e dei ruoli amministrativi.

Me ne stavo scordando, ecco i link ai due articoli:

Microsoft ASP.NET 2.0 Member/Role Management with IIS Part 1: Security and Configuration Overview
Microsoft ASP.NET 2.0 Member/Role Management with IIS Part 2: Implementation

powered by IMHO 1.3

posted @ martedì 10 gennaio 2006 11:37

Print
Comments have been closed on this topic.
«aprile»
domlunmarmergiovensab
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011