我有一个修改后的自定义规则,如下所示,我收到“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
答案 0 :(得分:0)
我发现问题是要包含第三方程序集文件(本例中是System.dll),我有两个冲突的System.dll文件。