0

我目前正在开发一个需要登录系统的 ASP.NET 网站。然而,当错误地假设角色数据库的连接字符串与我的 Microsoft SQL 数据库的连接字符串相同时,我意识到我不知道角色数据库在哪里。我通过我的计算机搜索类似于角色数据库的东西(搜索角色和 .mdf),但没有发现任何我可以识别的东西。你知道我在这里犯了什么错误吗?我是否必须专门创建此角色数据库?到目前为止,我的 web.config 代码读取为(没有个人识别顶部的连接字符串):

  <system.web>
    <compilation debug="true" targetFramework="4.5"/>
    <httpRuntime targetFramework="4.5"/>
    <roleManager  enabled="true" defaultProvider="providerForLogin">
      <providers>
        <add name="providerForLogin" type="System.Web.Security.SqlRoleProvider" applicationName="WebSite4" connectionStringName="ConnectionString" />
      </providers>
    </roleManager>
  </system.web>
</configuration>

提前感谢您提供的任何帮助!

4

2 回答 2

2

如果您指定相同的数据库连接字符串,ASP.Net 成员资格不会创建单独的数据库。

您所做的方式是正确的,它将用户、角色、成员资格表保存在您的表所在的同一数据库中。

仅供参考:如果您的应用程序是新的,请使用Universal Providers替代旧的 ASP.Net Membership(您当前使用的)

于 2013-02-18T15:44:05.377 回答
1

有一个名为aspnet_regsql.exe您需要运行的可执行文件才能创建成员模式。按照本教程

但是,就像@Win 所说,这是一个旧的。如果您使用 VS2012 进行开发,请使用Universal Providers 。

于 2013-02-18T15:52:37.063 回答