POCO实体流畅API与数据注释

本文关键字:数据 注释 API 实体 POCO | 更新日期: 2023-09-27 18:13:15

我在项目中编码我们的POCO实体,其中我没有引用EntityFrameworkDataAnnotations。第二个项目DataAccess包含数据上下文和实体的流畅配置。

部分实体属性为IsRequiredHasMaxLength。使用Domain的开发人员将不知道需要什么,或者在没有Xml注释文档的情况下是否存在属性的最大长度。因此,我在属性中添加了文档来传达需求。

问题是,然而,如果需求改变,我必须更新注释。这意味着我正在更新2个库- Domain和DataAccess。

我一直担心引用领域中的数据注释;我的属性中没有属性。这些属性将使开发人员能够访问域实体,了解需要什么,或者属性是否有最大长度。

是否有另一种方法来传达属性的属性需求,而不使用实体上的DataAnnotations或必须更新实体上的Xml注释?

或者,将DataAnnotation引用添加到Domain项目中是不必要的愚蠢吗?

POCO实体流畅API与数据注释

我认为这可能是一个好主意,离开你的POCO实体没有注释,不包括对EntityFramework.dll的引用。更容易创建可移植的dll和重用您的模型。也就是说,如果你需要的话。

但是正如你所说的,这使得"自动记录"模型变得更加困难。您可以尝试从DbContext中生成模型图,有一个强大的工具。也许这足以满足您的文档需求。我在一个有>200个实体的模型上尝试了它,它工作得很好。对于图表生成,它花了大约2分钟,但之后它工作得很好,并且对于"文档"目的很有用。