Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
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 - Fatal编程技术网

Asp.net mvc 4 有没有办法让EF 5代码优先迁移在ASP.NET MVC 4中使用sql server数据库?

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数据库开始,并将应用程序的所有表

我希望在启动一个新的ASP.NET MVC 4 Web应用程序项目时,它在默认情况下对所有内容都使用SQL Server。默认情况下,运行此项目时,它会创建一个LocalDb实例,并在其中创建以下表:

  • 会员网页
  • 网页\u OAuthMembership
  • 网页与角色
  • 网页\用户角色
  • 用户配置文件
我已经能够使用代码优先迁移将UserProfile表放入SQL server数据库。但是,我无法使用其他4个表来完成这项工作


显然,我的目标是从单个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")
    {

    }

    // ...
}