Thomas Bandt

Über mich | Kontakt | Archiv

[ASP.NET 2.0] CustomProvider mit eigenen Eigenschaften erweitern

Ein Segen sind die Provider in 2.0 ja ohnehin schon, kann man damit schließlich die vorhandenen coolen Features von ASP.NET 2.0 (Membership, Profile, SiteMap uvm.) auf einfachstem Wege und ohne tief im System wühlen zu müssen erweitern. Eines, der wie ich finde, coolsten Features die aber diese Provider wiederum alle mitbringen, ist dieses:

public override void Initialize(string name,
NameValueCollection config)
{
base.Initialize(name, config);
}

Schaut erstmal banal aus - ist es im Endeffekt auch, aber auch verdammt praktisch. Denn mit der übergebenen "NameValueCollection" ("config") lassen sich eigene Attribute und deren Werte aus der Web.Config so einfach auslesen, wie nur irgendwie möglich. Man muss also keinen Handstand mehr machen um an die eigene Config heran zu kommen, und kann diese auch noch dorthin packen, wo sie auch hingehört: in die Sektion, wo der Provider registriert wird.

Ein kleines Beispiel:

"MyMembershipprovider">
   
               name="MyMembershipprovider" 
         type="MyMembershipprovider"
         author="Thomas"
      />
   

Auslesen:

public override void Initialize(string name, NameValueCollection config)
{
   base.Initialize(name, config);

   string author = (string)config["author"];

   if (!string.IsNullOrEmpty(author))
   {
      // do something
   }
}

That's it :-)



« Zurück  |  Weiter »