0

我将尝试将 Sql Membership Provider 与登录控件一起使用,但登录控件正在创建自己的用户、角色、应用程序......表但只使用了用户表......

我使用 aspnet_regsql 将表和模式添加到我的数据库以使用 Sql Membership

如何配置 Sql Membership 以使登录控件使用由 aspnet_regsql 创建的表?

在我的供应商 web.config 配置下方:

 <membership defaultProvider="CrossReferenceWebSqlMembershipProvider">
    <providers>

       <add name="CrossReferenceWebSqlMembershipProvider" connectionStringName="CrossRef_DBConnectionString" enablePasswordRetrieval="false" 
            type="System.Web.Providers.DefaultMembershipProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, &#xD;&#xA; PublicKeyToken=31bf3856ad364e35" enablePasswordReset="true" requiresQuestionAndAnswer="true" requiresUniqueEmail="true" 
            maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" 
            applicationName="CrossReferenceWeb" />
    </providers>
 </membership>

<profile defaultProvider="CrossReferenceWebSqlProfileProvider">
  <providers>
    <clear />
    <add name="CrossReferenceWebSqlProfileProvider" connectionStringName="CrossRef_DBConnectionString" 
         type="System.Web.Providers.DefaultProfileProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" 
         applicationName="CrossReferenceWeb" />
  </providers>
</profile>

<roleManager enabled="true" defaultProvider="CrossReferenceWebSqlRoleProvider">
  <providers>
    <clear />
    <add connectionStringName="CrossRef_DBConnectionString" applicationName="CrossReferenceWeb"
      name="CrossReferenceWebSqlRoleProvider" type="System.Web.Security.SqlRoleProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
  </providers>
</roleManager>
4

1 回答 1

0

aspnet_regsql已弃用。请使用使用实体框架的ASP.NET 通用提供程序。

您无需为登录控件进行额外设置。Membership tag登录将自动选择您在中配置的设置web.config

于 2013-07-05T19:55:58.237 回答