使用asp.net身份时如何分离模型库
how to separate model library when using asp.net identity
我想创建具有分层架构的应用程序。我有单独的
- 只有模型的模型项目类
- 负责 CodeFirst 配置、迁移等的数据项目,
- 服务项目负责业务逻辑,使用EF保存数据库中的数据
- 在 Web 应用和服务之间使用 类 的 Dto 项目
- 带有 asp.net mvc 应用程序的 Web 项目。
我的目标是将这些项目分开,以便 Web 项目对模型和数据一无所知 - 它只是使用 Dto 类 使用服务,因此 Web 项目应该只引用服务和 Dto。在我配置 Asp.Net Identity 之前,一切都很好——为了配置授权,我不得不引用我想避免的数据和模型项目。是否可以实现我的目标,(如果可以)如何实现。
我的第二个问题是:从关注点分离的角度来看,我的设计是否可行?
我可能会将所有 ASP.NET 标识事物分离到它自己的项目中,其中包含 EF 数据访问和标识模型。将其视为更局部地或按主题而不是按功能分离关注点。
因此您的 Web 应用程序随后将引用 Service、Dto 和 Identity - 每个人似乎都有自己的世界角落。
imo,目标不一定是通过相似的功能划分代码,而是消除需要 none 的依赖项,并将领域知识隐藏(或者更确切地说是保护)到隔离和权威的块中。
是的,你的设计基本上很扎实,总体来说效果不错。
我想创建具有分层架构的应用程序。我有单独的
- 只有模型的模型项目类
- 负责 CodeFirst 配置、迁移等的数据项目,
- 服务项目负责业务逻辑,使用EF保存数据库中的数据
- 在 Web 应用和服务之间使用 类 的 Dto 项目
- 带有 asp.net mvc 应用程序的 Web 项目。
我的目标是将这些项目分开,以便 Web 项目对模型和数据一无所知 - 它只是使用 Dto 类 使用服务,因此 Web 项目应该只引用服务和 Dto。在我配置 Asp.Net Identity 之前,一切都很好——为了配置授权,我不得不引用我想避免的数据和模型项目。是否可以实现我的目标,(如果可以)如何实现。
我的第二个问题是:从关注点分离的角度来看,我的设计是否可行?
我可能会将所有 ASP.NET 标识事物分离到它自己的项目中,其中包含 EF 数据访问和标识模型。将其视为更局部地或按主题而不是按功能分离关注点。
因此您的 Web 应用程序随后将引用 Service、Dto 和 Identity - 每个人似乎都有自己的世界角落。
imo,目标不一定是通过相似的功能划分代码,而是消除需要 none 的依赖项,并将领域知识隐藏(或者更确切地说是保护)到隔离和权威的块中。
是的,你的设计基本上很扎实,总体来说效果不错。