【问题标题】:fxcop custom rules - Avoid having more than one class per filefxcop 自定义规则 - 避免每个文件有多个类
【发布时间】:2009-11-23 15:51:38
【问题描述】:

由于 fxcop 是一个程序集检查器,是否可以创建一个自定义规则来检查每个文件是否有多个类?

如果是,该怎么做?

感谢您的帮助

【问题讨论】:

    标签: c# fxcop


    【解决方案1】:

    这是不可能的。由于 FxCop 只检查二进制文件,因此无法判断一个类是由哪个文件定义的。

    但是,请查看StyleCop,它附带了这样一个开箱即用的规则。 (SA1402:FileMayOnlyContainASingleClass)

    【讨论】:

    • @SLaks:抱歉,我没有看过 StyleCop 一词,错过了您提到的确切规则。道歉和 +1 :)
    • 感谢您的回答。对 fxcop 来说太糟糕了
    • 可能有 pdb 文件,但 StyleCop 更适合这种检查。
    【解决方案2】:

    正如您自己所说:FxCop 检查已编译的程序集。因此,根本不再有类似源代码文件的东西。所以答案是否定的。

    但 MS StyleCop(与 FxCop 非常相似,但分析源代码文件而不是 IL 代码)可能能够满足您的需求。我不知道,如果这样的 StyleCop 规则已经存在 - 如果是这样,那么它绝对不在 StyleCop “开箱即用”的规则集中(即 MS 预定义的规则......)。

    HTH!

    编辑: 我现在已经看到,实际上有这样的规则(见上面的答案)......

    【讨论】:

    • StyleCop中有这样的规则;看我的回答。
    【解决方案3】:

    我的想法……

    • 鉴于调试器可以显示方法/类的代码。
    • 调试器必须能够获取该方法正在使用的文件 pdb 文件。
    • 所以您应该也可以这样做。

    抱歉,我不知道如何从 pdb 文件中读取信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多