【问题标题】:Is there a Visual Studio 2010 extension to sort methods?是否有用于排序方法的 Visual Studio 2010 扩展?
【发布时间】:2012-01-12 08:15:30
【问题描述】:

StyleCop 要求对 C# 文件的内容进行特定的排序。例如,字段应该在方法之前声明,公共声明应该在私有声明之前。

如果有一个 Visual Studio 扩展来自动将这些东西按顺序移动会很有用。

是否存在 good 扩展(我找到了 CodeSorter,但反馈表明它非常有问题)?或者是否有任何扩展或快捷方式可以减轻手动重新排序这些内容的痛苦?

【问题讨论】:

  • 如果你问我,这听起来像是一个愚蠢的规则。
  • 我相信这个想法是按重要性递减的顺序呈现信息,以便阅读它的人(即打算使用它)可以更快地掌握它。

标签: c# visual-studio-2010 coding-style stylecop visual-studio-extensions


【解决方案1】:

你可以试试Regionerate

Regionerate 是一种自动化工具,可帮助您保存您的 随着时间的推移代码的布局。 Regionerate 允许您在您的 编码并确定成员(字段、方法、属性等)的方式 应该放在里面。 Regionerate 是一个零摩擦的工具 - 设置时,您可以选择代码布局(您想要的方式 要查看的代码)或仅使用默认代码布局。从那一刻起 开启,Regionerate 将确保您的代码遵循该代码布局。

【讨论】:

    【解决方案2】:

    ReSharper 可以做到这一点。它具有“类型成员布局”功能,允许您使用默认规则集或定义自己的规则。

    【讨论】:

    • 经过一番搜索,我找到了this blog post,它为这种场景提供了一组 ReSharper 规则。
    【解决方案3】:

    我使用 ReSharper 及其类型成员布局。详情请见我的post

    【讨论】:

      【解决方案4】:

      CodeMaid 是一个免费的开源 Visual Studio 扩展,它将重新组织代码以遵循 StyleCop 约定。你可以在这里找到它:http://visualstudiogallery.msdn.microsoft.com/76293c4d-8c16-4f4a-aee6-21f83a571496

      免责声明:这是一个完全无耻的插件,我写的。 ;)

      【讨论】:

        【解决方案5】:

        如果代码排序是您唯一关心的问题,您可以尝试 Visual Studio Extension CodeSorter

        CodeSorter 是高度可定制的扩展,它允许其用户 按名称、类型(方法、 class, struct, ...), 可见性修饰符 (private, public, ...), 常量修饰符(常量、静态、只读)和虚修饰符 (virtual, override, new, ...)。

        可以分配多个搜索条件以具有相同的 优先级,例如将受保护成员和私有成员放在首位,以及 然后是公共和内部。

        名称的比较方式是去掉前导“m_”和“_”。 这允许字段和属性(例如 _foo 和 Foo)紧随其后 彼此。

        单行声明放置时不分隔空行,而 多行声明由空行分隔。例外 是单行字段后跟多行属性,没有 相同名称的注释将被放置,没有分隔空白 行。

        【讨论】:

        • 我在问题中提到了 CodeSorter。
        • @MatthewStrawbridge 我的错误。我已经使用了很长时间,到目前为止还没有遇到任何错误。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-05-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-09-26
        • 1970-01-01
        相关资源
        最近更新 更多