0

我會嘗試使用登錄控制的Sql成員提供程序,但登錄控制創建自己的用戶,角色,應用程序....表,但只使用用戶表...登錄控制和Sql成員提供

我用aspnet_regsql用於添加表和模式,以我的數據庫使用SQL成員資格

如何配置SQL成員資格對於Login控件使用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> 

回答

0

aspnet_regsql已被棄用。請使用使用實體框架的ASP.NET Universal Providers

您不需要爲登錄控件做額外的設置。登錄會自動提取您在web.configMembership tag中配置的設置。

+0

那麼,我試圖使用ASP.NET通用提供程序,但是當我使用ASP.NET配置工具正在尋找aspnet_regsql表和存儲過程...是posible解決方案嗎? – omixam

+1

在您的代碼中,** roleManager **仍在使用舊程序集。 **類型**應該是'System.Web.Providers ...'。最簡單的方法是 - 使用**軟件包管理器控制檯**,然後輸入「PM>安裝軟件包Microsoft.AspNet.Providers」。請參閱Scott Hanselman的文章。 – Win

+1

謝謝!我在一個空白的項目OpenAuth和通用提供程序測試,但我讀了兩種,但我不知道這是更好...我使用Web窗體與SQL程序不是實體框架....哪個更好?以及如何使用此技術管理角色? – omixam

相關問題