【发布时间】:2013-08-18 08:11:42
【问题描述】:
我正在使用来自 Asp 团队的 ASP.NET Identity Sample,并且我正在尝试更改 IdentityDbContext 的数据库...
我用构造函数试了一下
public MyDbContext() : base("MyConnectionString") { } // base is IdentityDbContext
类似于 DbContext 类。
在我尝试注册用户之前效果很好...
await IdentityStore.CreateLocalUser(user, model.Password)
返回false...没有错误,什么都没有。
有什么办法解决这个问题吗?
编辑:
文件名是Models\AppModel.cs,还有MyDbContext class
原来是
public class MyDbContext : IdentityDbContext<MyUser, UserClaim, UserSecret, UserLogin, Role, UserRole>
{
}
我改成
public class MyDbContext : IdentityDbContext<MyUser, UserClaim, UserSecret, UserLogin, Role, UserRole>
{
public MyDbContext() : base("MyConnectionString") { }
}
连接字符串正在工作,因为我有其他项目使用相同的,并且它们运行良好。
<connectionStrings>
<add name="MySailorContext" connectionString="Data Source=THOMAS-LAPTOP;Initial Catalog=MySailor;Integrated Security=True;Pooling=False;MultipleActiveResultSets=true" providerName="System.Data.SqlClient"/>
</connectionStrings>
【问题讨论】:
-
1) 你到底想做什么? 2) 在对代码进行任何更改(包括连接字符串)之前,您是否能够在应用程序中成功创建新用户? 3) 到目前为止,您对应用程序进行了哪些更改? 4) 更改连接字符串后,是否启用迁移并更新数据库以生成/更新架构?
-
2) 是的,它工作成功 3) 只更改了连接字符串和 DbContext 构造函数 4) 是的,我做了,否则我得到一个 SqlException
-
好的,为您的更改提供一些上下文,包括“public MyDbContext...”。仍然没有上面#1的答案 - 你想做什么?如果只是更改所有内容的 db,为什么不更改 web.config 中现有的连接字符串?
-
@RobM 这正是我所做的唯一一件事......
-
我想帮助你,但你需要提供更多信息!文件名、上下文 sn-p 包括周围的行...用于连接字符串的 web.config 部分。
标签: c# asp.net asp.net-mvc asp.net-identity