Tro*_*unt 4 .net entity-framework ndepend cqlinq
我在NDepend上遇到一点问题而不是忽略生成的代码.在创建实体数据模型时,它会在EF生成的designer.cs文件中查找围绕方法的问题.该类注释了"自动生成"注释,但仍被NDepend选中.
我似乎无法找到如何强制*.designer.cs被忽略,甚至忽略没有外卡的特定文件.我最接近的是几年前的这篇文章,其中帕特里克提到计划这样做,但仅此而已.
我错过了什么吗?有没有简单的方法来排除这个?
LINQ上的代码查询和规则(CQLinq)确实提供了忽略生成代码的工具.
有一个方便的预定义域名为JustodeCode,类型为ICodeBaseView.
域JustMyCode表示CQLinq的工具,用于从CQLinq查询结果中消除生成的代码元素.例如,以下查询仅匹配工具(如UI设计器)未生成的大型方法:
from m in JustMyCode.Methods where m.NbLinesOfCode > 30 select m
Run Code Online (Sandbox Code Playgroud)
生成的代码元素集由CQLinq查询定义,前缀为CQLinq关键字notmycode.例如,下面的查询匹配源文件中定义的方法,其源名称以".designer.cs"结尾:
notmycode from m in Methods where
m.SourceFileDeclAvailable &&
m.SourceDecls.First().SourceFile.FileName.ToLower().EndsWith(".designer.cs")
select m
Run Code Online (Sandbox Code Playgroud)
该CQLinq查询亚军执行所有notmycode依托查询之前查询JustMyCode,因此域JustMyCode为所有定义一次.显然,如果notmycode查询依赖于JustMyCode域,则CQLinq编译器会发出错误.
有4个默认的notmycode查询,可轻松适应您的需求.您还可以创建其他的notmycode查询:
归档时间: |
|
查看次数: |
1544 次 |
最近记录: |