如何使用命令行运行select FxCop规则

本文关键字:FxCop 规则 select 运行 何使用 命令行 | 更新日期: 2023-09-27 18:21:12

我知道你可以创建一个项目并使用相对路径,但我不想让项目文件处于版本控制中。为了简洁起见,我只想运行Microsoft.Design中的一个规则CA1001。我如何用命令行参数指定它,并使其在TeamCity FxCop构建运行程序中工作?

如何使用命令行运行select FxCop规则

有一个/ruleid命令行选项可用于此操作。它没有显示在MSDN帮助主题中的fxcopcmd.exe命令行选项中,但您可以通过运行fxcopcmd.exe /?来查看描述。

该工具位于''FxCopCmd.exe中。选项列表可在此处找到。所有选项都必须附加冒号和参数(如果有的话),但不能加空格。基本命令如下所示。

FxCopCmd.exe /file:E:'My'Project'Precompiled'bin 
/rule:"C:'Program Files (x86)'Microsoft FxCop 1.35'Rules" /out:fxcopreport.xml

您还可以应用多种规则,如任何需要的规则:

"C:'Program Files'Microsoft FxCop 1.35'FxCopCmd.exe"
/rule:"C:'Program Files'Microsoft FxCop 1.35'Rules'DesignRules.dll"
/rule:"C:'Program Files'Microsoft FxCop 1.35'Rules'GlobalizationRules.dll"
/rule:"C:'Program Files'Microsoft FxCop 1.35'Rules'InteroperabilityRules.dll"
/rule:"C:'Program Files'Microsoft FxCop 1.35'Rules'MobilityRules.dll"
/rule:"C:'Program Files'Microsoft FxCop 1.35'Rules'NamingRules.dll"
/rule:"C:'Program Files'Microsoft FxCop 1.35'Rules'PerformanceRules.dll"
/rule:"C:'Program Files'Microsoft FxCop 1.35'Rules'PortabilityRules.dll"
/rule:"C:'Program Files'Microsoft FxCop 1.35'Rules'SecurityRules.dll"
/rule:"C:'Program Files'Microsoft FxCop 1.35'Rules'UsageRules.dll"
/out:fxcopreport.xml
/summary
/file:"E:'MyProject'Model'bin'Debug'MyProject.dll"
/directory:"C:'Program Files'Reference Assemblies'Microsoft'Framework
'v3.5'System.Core.dll"

在上述命令中,标志为:

/rule要包含的规则dll的路径。

/out分析应保存到哪个文件。

/summary使FxCop在报告中包含摘要。

/file要分析的文件。

/目录由于某些原因,项目文件不记得找到System.Core.dll。为了避免错误,您可以这样指定dll。