【发布时间】:2012-01-06 20:26:05
【问题描述】:
谁能告诉我如何编写一个检查特定条件编译符号的 FXCop 规则?
例如,如果我想编写一个 FXCop 规则来检查代码是否已使用定义的编译符号“CODE_ANALYSIS”进行编译,我该怎么做?
我能想到的唯一方法是解析 .csproj 文件并查找 .我认为这种方式会很快变得混乱,因为您必须确定当前构建满足哪些构建条件。任何其他建议表示赞赏。
【问题讨论】:
谁能告诉我如何编写一个检查特定条件编译符号的 FXCop 规则?
例如,如果我想编写一个 FXCop 规则来检查代码是否已使用定义的编译符号“CODE_ANALYSIS”进行编译,我该怎么做?
我能想到的唯一方法是解析 .csproj 文件并查找 .我认为这种方式会很快变得混乱,因为您必须确定当前构建满足哪些构建条件。任何其他建议表示赞赏。
【问题讨论】:
我不相信你可以,因为 FxCop 在编译代码上工作,并且一旦生成编译代码,任何编译符号的概念都会被删除(因为编译器使用它们来生成编译代码,但它们不在其中) .
我认为你唯一能做的就是在 CODE_ANALYSIS 符号中添加一些代码,然后在 FxCop 中检查它的存在。
【讨论】:
#if CODE_ANALYSIS 部分之间添加一些内容,然后在 FxCop 中查找。