我想要一个关于循环命名空间依赖的警告

本文关键字:命名空间 循环 依赖 警告 一个 我想要 于循环 | 更新日期: 2023-09-27 18:16:57

我可以在程序集中安排我的代码,以强制执行适当的名称空间依赖性:

Company.Product.Domain assembly
Company.Product.DataAccessLayer assembly
  -References Company.Product.Domain
Company.Product.Application assembly
  -References Company.Product.Domain
  -References Company.Product.DataAccessLayer

因为循环程序集引用是不可能的,所以我可以确定我不是从域中引用DAL。

但是当你有多个域时,这会导致大量的程序集,我想简单地使用命名空间来组织项目,像这样:

Company.Product assembly
  -Company.Product.Domain namespace
  -Company.Product.DataAccessLayer namespace
  -Company.Product.Application namespace

有什么方法可以防止或警告我不想要的命名空间依赖性吗?

如果有人知道有"代码检查->自定义模式"的解决方案,我有更锐利的

我想要一个关于循环命名空间依赖的警告

我自己也有同样的问题,没有找到合适的工具,我自己创建了。使用(你猜怎么着):Roslyn.

它是开源的,在这里:http://nsdepcop.codeplex.com

它是这样工作的:

  • 您必须在XML文件中定义允许的命名空间依赖关系(每个项目一个文件)。
  • 该工具被集成到MSBuild进程中,因此每次构建时它都会运行,并对违反依赖规则的每个源代码段给出警告/错误。
  • 如果你安装了Roslyn终端用户预览(VS2013),那么它也会集成到Visual Studio中,并在你输入代码时给出反馈(无需构建以获得问题)。