自定义成员资格提供程序的问题

本文关键字:程序 问题 成员 自定义 | 更新日期: 2023-09-27 18:30:55

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

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

成员资格和角色提供程序位于编译且没有错误的同一 dll 中。 我将dll放入网站的bin文件夹中,然后不断收到错误消息,例如"无法加载类型"错误。

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

我已经在网络上搜索过,并找到了很多自定义成员资格提供程序的示例,但我找不到太多关于 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 名为 MemberProviderFromScratch.dll。

自定义成员资格提供程序的问题

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

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