0

我已经快过去很久以前的事解决了这个问题,但我忘了如何解决它......代码首先迁移总是默认为本地数据库

我有4个项目(型号N层结构,Data,Service,Web),并且无法获得Code-First Migrations以使用正确的连接字符串。我在Web.Config中设置了连接字符串,并将Web项目设置为解决方案的默认启动项目。但无论初始化或更新Migrations时,它都会创建一个新的本地.mdf默认数据库。

+0

有各种各样的默认和约定,但我更喜欢只是添加一个命名连接字符串到web.config(可以为不同的环境转换),然后将其添加到上下文构造函数。 http://www.entityframeworktutorial.net/code-first/database-initialization-in-code-first.aspx –

+0

在阅读您的建议之前,我刚刚意识到,指定为上下文库的连接字符串的命名方式不同于在web.config中:S – ohanaman

回答

0

我终于在另一个线程中找到了答案......问题是我的连接字符串名称在我的DbContext基础中指定,与我的web.config中的连接字符串的实际名称不匹配。

public class WWJEntities : DbContext 
{ 
    public WWJEntities() : base("WWJEntities") { } 

<add name="WWJ" connectionString="Data Sou... 

一旦我改变name="WWJ"name="WWJEntities"它的工作如预期。只要匹配,并且您的解决方案启动项目中已经有连接字符串,则您就是黄金。

相关问题