自定义成员资格提供程序

时间:2013-09-11 17:38:11

标签: c# vb.net asp.net-membership asp.net-2.0 membership-provider

我们有供应商为我们提供注册类型的服务。我编写了代码来访问他们公开的Web服务,以便我们根据用户数据库对用户进行身份验证。我已经在几个一次性应用程序中成功使用了这个代码,滚动了我自己的身份验证层,但我希望能够将它集成到.net。

因此,我使用现有代码为ASP.NET 2.0编写了自定义成员资格和角色提供程序。

成员资格和角色提供程序位于编译时没有错误的同一个dll中。我把dll放到网站的bin文件夹中,然后我得到像“无法加载类型”错误这样的常量错误消息。

我需要知道如何在Web.Config文件中连接'提供程序,以便dll被.net识别,并且提供程序知道使用正确的代码进行身份验证。

我在网上搜索过,找到了很多自定义成员资格提供程序的例子,但是我找不到web.config文件的正确设置。请帮忙!

课堂宣言

namespace vendAuth
{
public class VendMembershipProvider:System.Web.Security.MembershipProvider                             { 

网络配置

 < compilation defaultLanguage="c#" debug="false" batch="false">

     <assemblies>
        <add assembly="MembershipProviderFromScratch,Version=1.0.0.0, culture=neutral, PublicKeyToken=15dd03ae5e78b530" /> 
     </assemblies>
 < /compilation>

 < membership defaultProvider="VendMembershipProvider" userIsOnlineTimeWindow="30">
    <providers>
<clear />
<add name="VendMembershipProvider"                                                                                
     type="VendAuth.VendMembershipProvider, 
     MembershipProviderFromScratch, Version=1.0.0.0, Culture=neutral,  PublicKeyToken=15da13ae5e78b530"
     connectionStringName="someDATA"
     enablePasswordRetrieval="false"
     enablePasswordReset="false"
     requiresQuestionAndAnswer="false"
     requiresUniqueEmail="false"
     passwordFormat="Hashed"
     maxInvalidPasswordAttempts="5"
     minRequiredPasswordLength="7"
     minRequiredNonalphanumericCharacters="1"
     passwordAttemptWindow="10"
     passwordStrengthRegularExpression=""
     applicationName="VendAUTH" 
     AuthConnectionString="Auth"/>

        </providers>
    </membership>

该网站正在运行asp.net 2.0。我们使用Umbraco作为我们的CMS。

修改

驻留在〜/ bin文件夹中的自定义DLL名为MembershipProviderFromScratch.dll。

1 个答案:

答案 0 :(得分:1)

根据您的命名空间,类型应该是这样的 -

<add name="VendMembershipProvider"
     type="VendAuth.VendMembershipProvider, VendAuth"
     connectionStringName="someDATA"
     ... />