【问题标题】:ASP.NET role management with SQL Server 2012使用 SQL Server 2012 进行 ASP.NET 角色管理
【发布时间】:2013-07-01 17:29:24
【问题描述】:

在 ASP.NET 项目中多次尝试使用角色管理后,我需要帮助。

我设置了本地 SQL Server,下面是我的 web.config 文件的一些部分...

<connectionStrings>
   <add name="DefaultConnection" 
        providerName="System.Data.SqlClient" 
        connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-WebSite2-20130703132914;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-WebSite2-20130703132914.mdf"/>
   <add name="SqlRoleManagerConnection" 
        connectionString="Data Source=my-pc;&#xA;Initial Catalog=aspnetdb;Integrated Security=SSPI;"/>
</connectionStrings>

<roleManager enabled="true">
  <providers>
    <add name="DefaultRoleProvider" 
         connectionStringName="DefaultConnection" applicationName="/"   
         type="System.Web.Providers.DefaultRoleProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
    <add name="SqlRoleManager" 
         connectionStringName="SqlRoleManagerConnection" applicationName="/" 
         type="System.Web.Security.SqlRoleProvider"/>
  </providers>
</roleManager>

该应用程序称为网站。

aspnetdb 已经在本地数据库上设置好,可以管理角色了...

当我在 Visual Studio 2012 Express 中转到 ASP.NET 配置选项时,在安全性下,它告诉我它无法连接到数据库。

我猜问题出在我的 web.config 文件中,但我不确定...任何帮助将不胜感激!

【问题讨论】:

    标签: asp.net sql visual-studio-2012 web-config sql-server-2012


    【解决方案1】:

    你需要defaultProvider属性。它说明您将默认使用哪个提供程序。

    <roleManager enabled="true" cacheRolesInCookie="false" 
    defaultProvider="DefaultRoleProvider">
      <providers>
        <clear/>
        <add connectionStringName="DefaultConnection" applicationName="/" 
    name="DefaultRoleProvider" type="System.Web.Providers.DefaultRoleProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
    
        <add connectionStringName="SqlRoleManagerConnection" applicationName="/" 
    name="SqlRoleManager" type="System.Web.Security.SqlRoleProvider"/>
      </providers>
    </roleManager>
    

    【讨论】:

    • 好的,我今天就试试这个!
    【解决方案2】:

    不要配置两个连接字符串和两个提供者。 如果必须,请配置哪个是默认提供程序。

    阅读更多:http://msdn.microsoft.com/en-us/library/ff647401.aspx#paght000013_step2

    【讨论】:

    • 好的,我会拿出我不需要的。
    猜你喜欢
    • 2011-03-06
    • 1970-01-01
    • 1970-01-01
    • 2015-09-05
    • 2012-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多