我有一个修改后的自定义规则,如下所示,并且“System.CodeDom.Compiler.GeneratedCodeAttribute”的查询语法错误不是有效的类型名称。(对于我们的其他自定义属性,我也遇到了同样的错误)。我尝试使用 AllowNoMatch() 来避免语法错误,但它对我的结果没有影响。
另一个属性“System.Diagnostics.DebuggerNonUserCodeAttribute”工作得很好。
我想念什么吗?
==================================================== ===========
// <Name>Methods too big (LOC)</Name>
warnif count > 0 from m in JustMyCode.Methods where
m.NbLinesOfCode > 30
&& !m.ParentType.HasAttribute( "System.Diagnostics.DebuggerNonUserCodeAttribute" )
&& !m.ParentType.HasAttribute( "System.CodeDom.Compiler.GeneratedCodeAttribute" )
orderby m.NbLinesOfCode descending,
m.NbILInstructions descending
select new { m, m.NbLinesOfCode, m.NbILInstructions }
// Methods where NbLinesOfCode > 30 or NbILInstructions > 200
// are extremely complex and should be split in smaller methods.
// See the definition of the NbLinesOfCode metric here
// http://www.ndepend.com/Metrics.aspx#NbLinesOfCode