我在我的项目中为 Framework 4.0 安装了 Entity Framework 5.0 RC。但是当我尝试从视图中获取数据时,我得到了错误。EF 尝试为此实体创建表。
问问题
9942 次
2 回答
26
在应用程序启动时使用它来关闭数据库初始化和迁移:
Database.SetInitializer<YourContextType>(null);
于 2012-05-24T08:48:14.220 回答
11
如果您想完全关闭数据库初始化/迁移,无论您在哪个项目中使用您的 Context,您都可以在您的上下文中添加一个静态构造函数来调用初始化程序。这确保 SetInitializer 将在第一次构造/使用您的上下文之前被调用一次。
public class YourContext : DbContext
{
static YourContext()
{
// don't let EF modify the database schema...
Database.SetInitializer<YourContext >(null);
}
public YourContext() : base("name=YourContext")
{}
...
}
但是,如果您只想在少数几个项目中执行此操作,则最好通过应用程序启动明确地执行此操作 - 例如,在您的正常 IoC 设置期间,如 Ladislav 建议的那样。
于 2013-07-30T22:06:34.437 回答