ASP.NET MVC4 WebSecurity - DB存储位置

5
我刚安装了MVC 4并创建了一个默认的互联网项目。我能够创建用户名/登录/更改密码。
在MVC 3中,在创建用户后,我会在App_Data文件夹中看到一个ASPNETDB.MDF文件,并且我还可以在Website Administration Tool中管理用户/角色。
但是,在MVC 4中,即使我单击“显示所有文件”,也看不到ASPNETDB.MDF文件。此外,创建的任何新用户都不会显示在Website Administration Tool中。
有没有其他地方可以查找用户/设置角色?
谢谢

更新 我重新加载了解决方案,现在我能够看到 aspnetdb.mdf 了,然而,网站管理工具仍然显示没有用户。 - mildse7en
这可能有点旧,但对于任何新的人来说,如果正在寻找 localdb,则它不再存储在项目中,而是存储在用户的本地文件中。 - Piotr Kula
5个回答

2

我不确定您是否可以在MVC4中使用"网站管理工具"

转到Models文件夹并打开AccountModels.cs类。

您会找到以下代码,

public UsersContext()
            : base("DefaultConnection")
        {
        }  

前往web.config文件 查看名称为DefaultConnection的连接字符串,您可以查看存储用户/角色的数据库。


1
请参考此篇文章,其中提到“WSAT是为了与ASP.NET Membership一起使用而构建的,不兼容Simple Membership。有两个主要选项:
  1. 使用WebSecurity和OAuthWebSecurity API来管理用户和角色
  2. 使用上述API创建Web管理员
由于SimpleMembership运行在您的数据库之上,因此您可以像处理其他数据一样更新用户 - 通过EF甚至直接编辑数据库。
- Greatran

1
据我所知,您需要刷新解决方案,显示所有文件,然后查看 App_Data 文件夹。也许您忘记刷新了吗?
此外,您还可以手动进入 .MDF 文件,然后将其拖入 Visual Studio 中。然后它会自动打开服务器资源管理器,您可以在其中查看新用户。

0

打开您解决方案中的 web.config 文件,以检查 mdf 文件在哪里以及由什么名称创建。

您应该能够在配置文件中找到您的数据库详细信息:

</configSections>
  <connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source= ******>

有了这个,你可以在SQL服务器上打开相应的数据库,以查看你正在寻找的详细信息。


0

0

MVC 4互联网应用程序中的成员提供程序,简称SimpleMembership,不使用数据库ASPNETDB.MDF。您应该在App_Data目录中找到另一个数据库,其命名约定为aspnet-项目名称-999999999999.mdf,其中“项目名称”是它所创建的VS项目的名称,我相信该数字使用日期/时间和可能一些其他数字来生成一个相对唯一的ID。您将在此数据库中找到用户数据,但它与网站管理工具不兼容。您可以在此帖子中了解有关SimpleMembership数据库及其自定义的更多信息。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接