M. *_*har 15 entity-framework ef-code-first asp.net-mvc-4 visual-studio-2012
如何禁用EF中的代码优先功能(Visual Studio 2012)
我正在使用Visual Studio 2012,MVC4(Internet应用程序模板).
我想使用EF,但不使用其代码优先功能.我希望应用程序出错,而不是根据我的代码创建或修改我的数据库.(我只是不能忍受我的数据库在幕后被改变的感觉...我希望应用程序使用我创建的确切数据库...如果有任何必须更改的东西,我会自己动手)
这是新的Ef(VS2012)的可能吗?
我见过很多人问这个,但到目前为止我无法找到答案.
Sla*_*uma 23
您可以使用Code First,并通过将数据库初始化程序设置为以下内容,确保在更改模型时不会更新或覆盖数据库null
:
Database.SetInitializer<MyDbContext>(null);
Run Code Online (Sandbox Code Playgroud)
它是类的静态方法,Database
应该在应用程序的开头调用,例如在global.asax或上下文类的静态构造函数中.这样做,您必须手动更改模型类和数据库模式,以便它们匹配.
您还可以使用"反向工程"功能从现有数据库创建"代码优先"模型.这里解释:http://msdn.microsoft.com/en-us/data/jj200620
或者,如果您根本不想使用Code First并使用模型设计器,则可以使用Database First方法,如下所述:http://msdn.microsoft.com/en-us/data/jj206878
有关所有可能选项的概述,请访问:http://msdn.microsoft.com/en-us/data/ee712907.aspx
归档时间: |
|
查看次数: |
7566 次 |
最近记录: |