我看到一些奇怪的行为,我确信有一个简单的解释,我只是看不到。
使用Visual Studio 2012 RC,MVC 4,我创建了一个标准的Internet应用程序(使用Forms身份验证)。然后我使用aspnet_regsql将成员资格表添加到我的数据库。然后我更新了Web.config连接字符串以指向我的自定义数据库:
<add name="NewEdCoConnectionString" connectionString="Data Source=localhost\sqlexpress2012;Initial Catalog=NewEdCo;Integrated Security=True" providerName="System.Data.SqlClient" />
当然,更新了Web.config中的提供程序节点以使用该连接字符串。
工作正常。我可以在通常的IIS Express中启动应用程序,注册用户,以该用户身份登录等。我终止应用程序,重新启动,我仍然可以以该用户身份登录。所以这是持久的数据。
但是,在我SELECT * FROM
任何aspnet_ *表的SQL Server Management Studio中,它们不包含任何数据。
这些数据在哪里持续存在?
答案 0 :(得分:1)
事实证明,正如@Aristos在上述问题的评论中所提到的那样。 使用不同的数据库,但我目前不确定如何。数据库之间的区别是:
localhost\SQLEXPRESS2012
VS
DAVIDDONAHU436A\SQLEXPRESS2012
如果这是一个网络环境,我会假设命名主机不是本地主机。但这是一个沙盒虚拟机。我已经确认有问题的主机是那个名字。不知何故,在同一主机上有两个同名的SQL实例绑定到不同的主机名条目。
怪异。
答案 1 :(得分:-1)
在以后的版本中,数据不存储在aspnet _...中,而是存储在用户和角色中。点击此处查看更多信息:Aspnet web site administration tool, Users table or aspnet_users table