【发布时间】:2011-12-04 22:56:46
【问题描述】:
我创建了一个实现 DbContext "BeerRecommenderContext" 的上下文类和一个实现的初始化器
DropCreateDatabaseAlways<BeerRecommenderContext>
当我运行/调试项目时,实体框架不会删除旧数据库并创建新数据库,因此不会反映模型中的更改,这会导致问题。然后我手动删除数据库并重新运行,实体框架不会创建数据库。我再次运行它,实体框架成功构建了新数据库。我对连接字符串不是很熟悉,所以这可能是个问题:
<add name="BeerRecommenderContext"
connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;
database=BeerRecommenderContext.mdf;
AttachDBFilename=|DataDirectory|BeerRecommenderContext.mdf;
User Instance=true"
providerName="System.Data.SqlClient" />
在我的 Global.asax.cs 文件的 Application_Start 方法中,我添加了这一行
Database.SetInitializer<BeerRecommenderContext>(new BeerRecommenderInitializer());
如何让 DropCreateDatabaseAlways 正常执行?
【问题讨论】:
标签: asp.net-mvc-3 entity-framework-4.1 ef-code-first sql-server-2008-r2