Bla*_*ell 8 c# entity-framework-core asp.net-core-mvc asp.net-core clean-architecture
我正在按照Microsoft 架构指南创建 ASP.NET Core Web 应用程序。
该指南实现了非常简单的简洁架构模式。
如果您查看使用干净架构模式的示例项目,您将看到有一个包含 ApplicationUser.cs 类的Infrastructure/Identity文件夹。
我的问题:
我正在使用实体框架,ApplicationCore 类库中的一个业务实体需要包含一个 ApplicationUser 列表。ApplicationCore 库不应引用任何其他项目。它包含所有接口和业务实体。如何在我的基础设施/身份项目中保留 ApplicationUser 类,并且在不违反规则的情况下仍然在 ApplicationCore 项目中的业务实体之一中使用它。
我知道一种解决方案是不在我的基础设施项目中存储 ApplicationUser 实体。但是,我觉得它应该在那里,因为它在实现 IdentityUser 时将始终依赖于 Identity。
在清洁架构中:
\n\n应用核心类型
\n\n\xe2\x80\xa2 实体(持久化的业务模型类)和聚合
\n\n\xe2\x80\xa2 接口
\n\n\xe2\x80\xa2 服务
\n\n\xe2\x80\xa2 DTO
\n\n\xe2\x80\xa2 规格
\n\n\xe2\x80\xa2 异常
\n\n基础设施类型
\n\n\xe2\x80\xa2 EF Core 类型(DbContext、迁移)
\n\n\xe2\x80\xa2 数据访问实现类型(存储库)
\n\n\xe2\x80\xa2 基础设施特定服务(FileLogger、SmtpNotifier 等)
\n\n所以ApplicationUser.cs是一个实体,它应该位于Application Core中
\n| 归档时间: |
|
| 查看次数: |
1764 次 |
| 最近记录: |