使用ASP.NET身份时,如何分离模型库



我想用分层体系结构创建应用程序。我有独立的

  • 仅具有模型类的模型项目
  • 负责CodeFirst配置,迁移等负责的数据项目,
  • 负责业务逻辑的服务项目,并使用EF
  • 保存数据库中的数据
  • dto项目与Web应用程序和服务之间使用的类别
  • 使用ASP.NET MVC应用程序的Web项目。

我的目标是将这些项目分开,以便Web项目对模型和数据一无所知 - 它只是使用DTO类消耗服务,因此Web项目应仅参考服务和DTO。一切都很好,直到我配置ASP.NET身份 - 为了配置授权,我必须参考我想避免的数据和模型项目。是否可以实现我的目标,并且(如果是)如何做。

我的第二个问题是:从关注点的分离来看,我的确定是可以的吗?

我可能会将所有ASP.NET身份事物分为其自己的项目,同时又有EF数据访问和身份模型。将其视为更局部或通过主题将问题分开,而不是通过功能。

因此,您的Web应用程序将参考服务,DTO和身份 - 每个人似乎都有自己的角落。

IMO的目标不一定是将代码除以类似功能,而是消除无需不需要的依赖项,并隐藏(或更确切地说是保护)域知识为孤立和权威的块。

是的,您的设计基本上是固体的,通常效果很好。

相关内容

  • 没有找到相关文章

最新更新