如何在 Clean Architecture 项目中处理与 ASP.NET Core Identity 的多对多关系?

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

我正在从事一个遵循清洁架构模式的项目,我正在使用 ASP.NET Core Identity 来处理身份验证和授权。我有一个继承自 IdentityUser 的 User 实体,我需要与域中的其他实体建立多对多关系。

问题是我无法将对 Microsoft.AspNetCore.Identity.EntityFrameworkCore 的依赖添加到域层,因为它会违反依赖规则。因此,我决定将 User 类移动到基础结构层,在那里我可以引用 Microsoft.AspNetCore.Identity.EntityFrameworkCore。但是,这产生了一个新问题,因为我无法使用导航属性来配置与域层中其他实体的关系。

处理这种情况的最佳方法是什么?我是否应该将 User 类移回域层,即使这意味着违反依赖规则?或者有没有办法在没有导航属性的情况下配置多对多关系,同时将 User 类保留在基础设施层中?

我将不胜感激有关此主题的任何指导。谢谢!

我想自由使用导航属性。但我不想违反基本规则。

entity-framework-core asp.net-identity clean-architecture navigation-properties
© www.soinside.com 2019 - 2024. All rights reserved.