NDepend for HasAttribute(“System.CodeDom.Compiler.GeneratedCodeAttribute”.AllowNoMatch())

时间:2013-07-08 17:59:57

标签: ndepend

我有一个修改后的自定义规则,如下所示,我收到“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

1 个答案:

答案 0 :(得分:0)

我发现问题是要包含第三方程序集文件(本例中是System.dll),我有两个冲突的System.dll文件。