【问题标题】:How can I write a custom FXCop rule to check for conditional compilation symbols?如何编写自定义 FXCop 规则来检查条件编译符号?
【发布时间】:2012-01-06 20:26:05
【问题描述】:

谁能告诉我如何编写一个检查特定条件编译符号的 FXCop 规则?

例如,如果我想编写一个 FXCop 规则来检查代码是否已使用定义的编译符号“CODE_ANALYSIS”进行编译,我该怎么做?

我能想到的唯一方法是解析 .csproj 文件并查找 .我认为这种方式会很快变得混乱,因为您必须确定当前构建满足哪些构建条件。任何其他建议表示赞赏。

【问题讨论】:

    标签: c# fxcop


    【解决方案1】:

    我不相信你可以,因为 FxCop 在编译代码上工作,并且一旦生成编译代码,任何编译符号的概念都会被删除(因为编译器使用它们来生成编译代码,但它们不在其中) .

    我认为你唯一能做的就是在 CODE_ANALYSIS 符号中添加一些代码,然后在 FxCop 中检查它的存在。

    【讨论】:

    • 是的。那正是我所想。我想知道是否有创建类似属性的东西会被预构建注入,然后我可以寻找它。我想我应该考虑用 MSBuild 来做这件事。
    • 就像我说的,只需在#if CODE_ANALYSIS 部分之间添加一些内容,然后在 FxCop 中查找。
    • 出于我的目的,我必须使用某种扩展将代码注入到所有项目中。由于我必须编写一个 VS 扩展,我不妨在构建扩展之前查找适当的常量。
    猜你喜欢
    • 2019-03-24
    • 1970-01-01
    • 1970-01-01
    • 2010-10-03
    • 2010-12-31
    • 1970-01-01
    • 1970-01-01
    • 2023-03-18
    • 2015-09-06
    相关资源
    最近更新 更多