无法找到asp.net MemberShip

时间:2011-04-22 19:30:44

标签: asp.net membership-provider

我在远程托管sql框中创建了我的数据库中的aspnetdb.mdf表和sp。 当我从我的开发本地框运行时,成员资格提供程序远程连接并正常工作。但是当我在现场网站上尝试时,我会收到以下错误 这是我的web.config设置。

<add name="LocalSqlServer" connectionString="Data Source=remoteIP;Initial Catalog=admin_TeacherClassSchedule;User ID=developer;Password=blah" providerName="System.Data.SqlClient"/>

 <membership defaultProvider="SqlProvider">
      <providers>
        <add
          name="SqlProvider"
          type="System.Web.Security.SqlMembershipProvider"
          connectionStringName="LocalSqlServer"
          applicationName="/"
          enablePasswordRetrieval="true"
          enablePasswordReset="true"
          requiresQuestionAndAnswer="true"
          requiresUniqueEmail="false"
          passwordFormat="Encrypted"
          maxInvalidPasswordAttempts="5"
          passwordAttemptWindow="10" />
      </providers>
    </membership>

    <roleManager enabled="true" defaultProvider="SqlProvider">
    <providers>
      <clear/>
      <add
        name="SqlProvider"
        type="System.Web.Security.SqlRoleProvider"
        connectionStringName="LocalSqlServer"
        applicationName="/" />
    </providers>

'/ TCS'应用程序中的服务器错误。 配置错误 描述:处理为此请求提供服务所需的配置文件时发生错误。请查看下面的具体错误详细信息并适当修改配置文件。

分析程序错误消息:找不到默认成员资格提供程序。

来源错误:

第42行: 第43行: 第44行: 第45行: 第46行:

2 个答案:

答案 0 :(得分:3)

    <remove name="LocalSqlServer" />
<add name="LocalSqlServer" connectionString="Data Source=1.1.1.1;Initial Catalog=dbname;User ID=blah;Password=blah" providerName="System.Data.SqlClient"/>

<membership defaultProvider="SqlProvider">
  <providers>
    <add
      name="SqlProvider"
      type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
      connectionStringName="LocalSqlServer"
      applicationName="/"
      enablePasswordRetrieval="true"
      enablePasswordReset="true"
      requiresQuestionAndAnswer="true"
      requiresUniqueEmail="false"
      passwordFormat="Encrypted"
      maxInvalidPasswordAttempts="5"
      passwordAttemptWindow="10" />
  </providers>
</membership>

<profile>
  <providers>
    <clear/>
    <add name="SqlProvider"
        connectionStringName="LocalSqlServer"
        applicationName="/"
        type="System.Web.Profile.SqlProfileProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
  </providers>

  </profile>
<roleManager defaultProvider="SqlProvider" enabled="true" >
  <providers>
    <clear/>
    <add
      name="SqlProvider"
      type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
      connectionStringName="LocalSqlServer"
      applicationName="/" />
  </providers>
</roleManager>

答案 1 :(得分:1)

尝试在添加成员身份前加<clear />。在添加之前,我通常会清除所有提供商,以防万一。