Entity Framework mvc Code First data migration

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

==============================================================

个人整理

原文地址:https://www.cnblogs.com/sunShineJing/p/4846768.html