加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – OnModelCreating与数据库配置的DataAnnotations

发布时间:2020-12-16 09:51:00 所属栏目:asp.Net 来源:网络整理
导读:我有一个更复杂的解决方案,它为我的POCO课程提供了一个Domain项目.我想生成数据库,其中一些表字段被转换为特定长度.现在我看到了两种方法:POCO类本身的数据注释或者在我的DbContext中使用OnModelCreating方法,但这是最好的方法吗? 我对OnModelCreating方法
我有一个更复杂的解决方案,它为我的POCO课程提供了一个Domain项目.我想生成数据库,其中一些表字段被转换为特定长度.现在我看到了两种方法:POCO类本身的数据注释或者在我的DbContext中使用OnModelCreating方法,但这是最好的方法吗?

我对OnModelCreating方法的关注是,这是特定于Entity Framework的.我应该切换到另一个ORM,除非我重新实现它,否则数据库配置将丢失.

使用Annotations方法,我最终使我的模型混乱,并担心他们失去了“POCO”标签.我也不确定其他ORM是否会尊重注释.另一方面,关于数据库应该是什么样子的所有信息都与模型相关联,因此易于维护.

有什么想法指出我正确的方向?

解决方法

OnModelCreating更好.某些映射功能无法通过数据注释获得.此外,正如您在某些情况下已经提到的,数据注释违反了POCO原则,因为您的类可以包含有关持久性的信息,甚至一些数据注释当前需要在您的域项目中引用EntityFramework.dll.

另请注意,数据注释是MS特定功能,主要由MS工具使用.如果要将它们与其他ORM一起使用,则必须实现从数据注释到ORM的映射描述的转换(除非它已经存在).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读