user1139666
user1139666

Reputation: 1697

MembershipProvider's Initialize method not executed

I am developing an ASP .Net website.
I have declared a custom MembershipProvider in my web.config file as follows :

<membership defaultProvider="MyMembershipProvider">
    <providers>
        <clear/>
        <add name="MyMembershipProvider" type="CompleteSubtitles.Web.Security.MembershipProvider"/>
    </providers>
</membership>

I have created a login ASPX page.
I call the MembershipProvider.ValidateUser method in the validate button click event handler.
I have noticed that the MembershipProvider.Initialize method is not executed automatically by ASP .Net.
Is it normal ?

The MembershipProvider.Initialize method is necessary to load the MembershipProvider's configuration.

Upvotes: 1

Views: 1221

Answers (1)

user1139666
user1139666

Reputation: 1697

I have got the solution after reading LordHits's answer on this thread : How do I call Initialize on a custom MembershipProvider?

I badly instanciated my MembershipProvider as follows :

    CompleteSubtitles.Web.Security.MembershipProvider l_membershipProvider = 
        new CompleteSubtitles.Web.Security.MembershipProvider();

The correct way is :

    CompleteSubtitles.Web.Security.MembershipProvider l_membershipProvider =
        (CompleteSubtitles.Web.Security.MembershipProvider)Membership.Providers["MyMembershipProvider"];

The MembershipProvider.Initialize method is executed when using the correct way.
The MembershipProvider configuration is consequently read from the web.config file.

Upvotes: 2

Related Questions