1. Code First 可以先在代码里写好数据模型,自动生成DB。下一次启动的时候会根据__MigrationHistory判断 数据库是否和模型一致。
详情参考:http://blogs.msdn.com/b/adonet/archive/2012/02/09/ef-4-3-code-based-migrations-walkthrough.aspx
如果想改变数据库的某个字段,而又不想重新生成一遍数据库的话。请按照以下操作做:
Package Manager console:
enable-migrations ↓
在项目中会生成一个Migrations的文件夹。
如果修改db的某个表,只需把Configuration.cs中的AutomaticMigrationsEnabled = false; 修改为true.
并在Package Manager console 中执行 update-database ↓ 即可。
这个方法很好的解决了我每次修改数据库字段就要重新drop db,create db的烦恼。
Update-database -verbose -force
用force不会丢失数据哦。
2. 说一下 EntityFramework power tools beta 4
我们平时习惯建好DB模型生成db。那我们又想采用code first的方式怎么办呢。
EntityFramework power tools beta 4 这个工具很强大,装好之后。右键项目,找到entity Framework,Reverse engineer code First 就可以把模型生成好啦。
如果觉得生成的模型的扩展不自由,不满足个人需求的话。可以采用 Customize Reverse Engineer Templates了。可以改动模型。俗称 T4模板。
参考:https://msdn.microsoft.com/en-US/data/jj593170
==============================================================
个人整理