不再支持EDMX后使用EF作为ORM

时间:2016-10-07 08:19:33

标签: entity-framework

目前我正在使用数据库第一种方法,我使用数据库中的EF设计器对数据库进行反向工程,以生成具有复数的EDMX文件。然后,我使用设计器生成符合C#的名称,然后生成相应的POCO。更新表格有点痛苦,但可以在维护已在EDMX中进行的ORM映射时实现。

据我所知,EF的未来版本将不再支持EDMX文件。

如何使用EF将数据库字段转换为C#c​​omplient对象,例如用于表名的PascalCasing和用于表属性的驼峰外壳,如何继续我的数据库第一种方法?

1 个答案:

答案 0 :(得分:1)

即使没有设计人员的支持,您仍然可以对现有数据库进行逆向工程。事实上,我们已经使用各种工具(EF Power Tools(来自MS),EF Designer版本的EF Designer(来自MS),ReversePoco(reversepoco.com))有一段时间。这些都创建了一套看起来就像db表模式的域类和包装这些类的dbcontext。

对于EF Core,目前有一个名为“Scaffold”的迁移命令,它允许您执行相同操作...指定数据库以及参数以自定义操作...并生成域类和dbcontext。

除了没有视觉设计师之外,另一个很大的区别在于它是一次性拍卖。如果db发生更改,则无法对模型进行更新。您可以手动执行此操作,也可以使用相反的操作:如果模型通过迁移进行更改,则更新数据库。

还有其他选项,例如DevArt的Entity Developer,用于处理efcore的视觉模型,LLBLGen也会很快使用。

HTH!