您的位置:首页 > 理论基础 > 数据结构算法

Entity Framework Code First 修改数据结构

2014-12-16 17:19 381 查看
相信刚接触EF Code First 的时候 都会被他的强大而震撼。

然而随着开发的深入,肯定会有修改之前结构的情况,例如添加或删除一个自动,修改一个字段属性。

EF本身也提供了一些功能:

Database.SetInitializer<XXContext>(

    new DropCreateDatabaseIfModelChanges<XXContext>());

但是如果在生产环境这种方式肯定是不可取的。

最灵活的方式,也是最原始的方式就是放弃EF自动同步的功能,自己修改实体类,自己修改数据库结构。

操作方法如下:

要先删除数据库中dbo.EdmMetadata这张表,或者修改表名也是可以的。

比如我现在往Category类中加一个Status字段

public string Status { get; set; }

然后往数据库的Categories表中也添加Stauts这个字段,这样程序还是能照常运行的,不会清空数据库原有内容。

不过这样以后,code first的功能就无法使用了,如果你建立新的model,它不再自动帮你创建表了。

当然一个系统已经进入了生产环境,数据结构不可能变动太大,放弃EF的自动同步功能也是值得的。


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐