我想要一个关于循环命名空间依赖的警告
本文关键字:命名空间 循环 依赖 警告 一个 我想要 于循环 | 更新日期: 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中,并在你输入代码时给出反馈(无需构建以获得问题)。