VS2010自定义代码分析规则

时间:2010-03-17 15:59:04

标签: visual-studio-2010 code-analysis fxcop

我正在尝试为mstest项目VS2010编写自定义fxcop规则。我想调试它但是当它试图为mstest项目加载dll时仍然遇到异常,它失败说它找不到引用的程序集:



  
   Microsoft.FxCop.Common.AssemblyLoadException
   Could not load C:\Users\Administrator\Documents\Visual Studio 2010\Projects\20100106-CodeAnalysisRulesBlogDemo\BlogDemo\TestProject1\bin\Debug\TestProject1.dll.
   Microsoft.FxCop.Sdk.InvalidMetadataException
   The following error was encountered while reading module 'TestProject1': Assembly reference cannot be resolved: Microsoft.VisualStudio.QualityTools.UnitTestFramework, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a.

有谁知道如何解决这个问题?如果我只是运行代码分析它工作正常,但一旦我尝试调试失败。

由于

2 个答案:

答案 0 :(得分:1)

您可以使用/ d选项指定在程序集解析期间搜索的其他目录。

代码分析不会自动从项目设置中获取程序集,除非您已将它们全部设置为“本地复制”。

答案 1 :(得分:0)

编写FxCop规则的另一种方法是使用NDepend工具。这个工具允许通过C#LINQ查询编写代码规则 what we call CQLinq免责声明:我是该工具的开发人员之一

默认情况下会提出超过200 code rules的内容。由于众所周知的 C#LINQ语法,自定义现有规则或创建自己的规则非常简单。

CQLinq查询可以在VisualStudio中实时编辑,并提供即时结果,并提供结果浏览功能:

CQLinq rules

可以live in Visual Studio验证规则generated HTML+javascript report并在构建流程时验证规则。