Web*_*Dev 5 c# entity-framework-core .net-core asp.net-core clean-architecture
我正在构建一个新的 ASP.NET Core 5 MVC 应用程序。我想使用 Microsoft 的 Web 应用程序架构电子书中概述的干净架构。
我还在研究此处提供的 eShopOnWeb 示例应用程序:
https://github.com/dotnet-architecture/eShopOnWeb
我从电子书和示例应用程序中了解到的是 - EF Core 实体类(例如客户、产品、订单)将进入 ApplicationCore 项目的 Entities 文件夹。DbContext 将位于基础设施项目中。
我的困惑是:是否可以在项目内的这些实体类上添加数据注释模式属性,例如[Table]、[DatabaseGenerated]、 和?如果没有,我应该在哪里添加这些数据注释?[Key]ApplicationCore
非常感谢这方面的任何建议。
谢谢。
在eShopOnWeb的示例中,它们将实体和配置模型分开。因此,这意味着要拥有干净的架构,您不需要直接在这些实体中进行注释。
您可以使用 FluentAPI,就像它们在Infrastructure/Data/Config目录中使用的那样。
因此,如果您有一个单独的 DataContext 项目,那么在这种情况下,这是使用 FluentAPI 描述实体的最佳位置。
有关 FluentAPI 的更多信息: https://learn.microsoft.com/en-us/ef/ef6/modeling/code-first/fluent/types-and-properties
| 归档时间: |
|
| 查看次数: |
3577 次 |
| 最近记录: |