Asp.net mvc 4 有没有办法让EF 5代码优先迁移在ASP.NET MVC 4中使用sql server数据库?
我希望在启动一个新的ASP.NET MVC 4 Web应用程序项目时,它在默认情况下对所有内容都使用SQL Server。默认情况下,运行此项目时,它会创建一个LocalDb实例,并在其中创建以下表:Asp.net mvc 4 有没有办法让EF 5代码优先迁移在ASP.NET MVC 4中使用sql server数据库?,asp.net-mvc-4,visual-studio-2012,entity-framework-5,sql-server-2012,entity-framework-migrations,Asp.net Mvc 4,Visual Studio 2012,Entity Framework 5,Sql Server 2012,Entity Framework Migrations,我希望在启动一个新的ASP.NET MVC 4 Web应用程序项目时,它在默认情况下对所有内容都使用SQL Server。默认情况下,运行此项目时,它会创建一个LocalDb实例,并在其中创建以下表: 会员网页 网页\u OAuthMembership 网页与角色 网页\用户角色 用户配置文件 我已经能够使用代码优先迁移将UserProfile表放入SQL server数据库。但是,我无法使用其他4个表来完成这项工作 显然,我的目标是从单个SQL Server数据库开始,并将应用程序的所有表
- 会员网页
- 网页\u OAuthMembership
- 网页与角色
- 网页\用户角色
- 用户配置文件
显然,我的目标是从单个SQL Server数据库开始,并将应用程序的所有表包含在单个数据库中。打开InitializeSimpleMembershipAttribute.cs文件,这就是WebSecurity数据库初始化的位置。您需要使用正确的connectionStringName对其进行修改。例如: 改变
WebSecurity.InitializeDatabaseConnection("DefaultConnection", "UserProfile", "UserId", "UserName", autoCreateTables: true);
到
如果您想复制web安全表的结构以便首先与代码一起使用,下面有一篇文章。。。。我现在找不到。。。给我一些
嗯,我找不到它,但老实说,这是一种痛苦。由于已经生成了DB,因此最简单的方法可能是使用代码优先的反向工程工具,如。这将为您完成大部分工作。然后,只需将类添加到DbContext中,创建迁移,并更新真实的数据库
此外-您可能需要进行更多的修改-具体取决于您的上下文名称等。如果您的目标是仅在现有数据库中创建这些表,则应执行2个步骤 首先,将db初始化的连接字符串更改为@Jack所说的 其次,在DbContext中,按如下方式更改构造函数:
public class MyDbContext : DbContext
{
publicMytDbContext()
: base("MyRealDBConnection")
{
}
// ...
}
public class MyDbContext : DbContext
{
publicMytDbContext()
: base("MyRealDBConnection")
{
}
// ...
}