从Business Logic中分离数据库相关属性

问题描述 投票:0回答:1

我正在用Entity Framework数据库改变项目第一种方法来代码First。目前,每个poco都有一个额外的部分类,其中包含其他属性和方法。一些部分类甚至扩展了基类。

作为第一步,我为每个poco创建了实体类,并添加了一个实体配置。

现在我不知道如何继续进行部分课程。将所有这些业务逻辑添加到实体类中会感觉不对。此外,我必须将NotMapped属性添加到每个其他属性中,我担心将来有人会添加属性而忘记添加可能导致迁移问题的NotMapped属性。

所以我想知道如何分离实体和其他属性和方法?这是什么最好的做法?谢谢!

c# .net entity-framework-6 ef-code-first
1个回答
0
投票

这是我解决这个问题的方法:

我创建了一个名为“Entities”的文件夹和一个名为“DomainEntities”的文件夹,并将每个实体类的副本放入每个文件夹中。然后我将部分类中的所有业务逻辑添加到DomainEntities。 Entities文件夹的类仅用于数据库操作。我使用automapper将实体映射到域名,反之亦然。

如果有人知道更好的方法,请分享。

© www.soinside.com 2019 - 2024. All rights reserved.