成员资格提供程序错误mvc web.config

时间:2014-01-27 12:13:39

标签: asp.net asp.net-mvc iis web-config

我的申请中出现会员错误。

这是我创建错误的web.config部分。

<membership defaultProvider="DefaultMembershipProvider">
            <providers>
                <add name="DefaultMembershipProvider" type="System.Web.Providers.DefaultMembershipProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/" />
            </providers>
        </membership>

像我读过的所有其他相同的问题一样,告诉我有关将defaultProvidername添加到此配置文件的信息。

但我已经将defaultProvider和名称设置为默认值。

还需要做哪些其他定制工作?

您可以在此处看到此错误 -

http://funranger.com

2 个答案:

答案 0 :(得分:3)

我怀疑在加载配置文件之前已经注册了会员提供商。

您需要删除第一个会员提供商,这可以通过在添加提供商之前清除所有提供商来完成,就像您对连接字符串一样。

在配置部分的Membership / providers部分中,在元素之前添加一个元素。

<membership>
      <providers>
        <clear/>
        <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="WorkI" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/"/>
      </providers>
    </membership>

并在web.config文件中添加以下行。

<connectionStrings><add name="DefaultConnection" connectionString="Data Source=YourServername;Initial Catalog=YourDBname;Integrated Security=True;MultipleActiveResultSets=True" providerName="System.Data.SqlClient" /></connectionStrings>

答案 1 :(得分:0)

以下是您的会员提供商声明在system.web元素下的web.config中的样子

<membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="15">
      <providers>
        <clear />
        <add 
          name="SqlProvider" 
          type="System.Web.Security.SqlMembershipProvider" 
          connectionStringName="MySqlConnection"
          applicationName="MyApplication"
          enablePasswordRetrieval="false"
          enablePasswordReset="true"
          requiresQuestionAndAnswer="true"
          requiresUniqueEmail="true"
          passwordFormat="Hashed" />
      </providers>
    </membership>