在Visual Studio中的字母排序方法

64

是否有适用于Visual Studio 2008的插件或工具可以对方法进行按字母顺序排序?理想情况下,我希望有一个工具可以自动或按需对所选内容或指定类型(例如仅限方法,而不是成员变量)进行排序。

5个回答

41

虽然Resharper有许多很酷的功能,但它对CPU和I/O使用有很大影响,而且使用起来非常复杂。除非您符合一些非常特定的免费使用许可证条件,否则它仅在商业许可下提供。

试试CodeMaid吧。它可用于商业用途,性能开销要小得多。我发现它易于使用,并且非常适合字母排序方法。


要按文件排序,请通过“解决方案资源管理器”打开该文件:

  1. 右键单击打开的文件
  2. 选择Code Maid菜单(可能在右键菜单的顶部附近)
  3. 点击重组活动文档

或者,使用默认的CodeMaid热键CTRL+M,Z 来对当前文件进行排序。


26

Resharper具有类型成员布局功能,可以按类型、可访问性和字母顺序对成员进行排序。

你还可以查看Ora,它在Visual Studio中显示一个面板,可以对源代码进行排序(即使您的源代码未经过排序)。链接已失效。


23
以下答案比起提问者的要详细得多,因为我认为仅仅按名称对排序方法进行排序对于大多数程序员来说远远不够。通常您希望将方法、构造函数、字段、事件处理程序和接口实现彼此分开(即通过区域),并按各种标准进行排序。
为此,我尝试了 NArrangeRegionerate 和其他工具,但我发现它们使用起来不直观。所以我选择了 ReSharper 作为我的工具。
正如 @DavidN 所提到的,ReSharper 可以按名称、可访问性、类型、只读等方式对类成员(字段、构造函数、方法、委托)进行排序。您还可以将特定成员包围在区域中。我最喜欢的是能够分组接口成员(例如,在其中包含 void Dispose() 方法的 #region IDisposable)和处理事件的方法。
ReSharper 提供了两种 - 配置和触发类成员排序的简单方法。 配置布局 在 Visual Studio 中创建一个 XML 文件,并将默认类型成员布局(ReSharper 选项 > 语言 > C# > 类型成员布局)复制粘贴到该文件中。下载最新的 XSD 模式。将模式文件添加到 Visual Studio 的模式文件中(菜单 > XML > 模式... > 添加)。现在,您应该能够使用 IntelliSense 支持编辑 XML 文件。

触发重新排序

如果您使用Visual Studio键盘方案(ReSharper选项> Visual Studio集成),并按下Ctrl+E,F进行静默代码清理。 会弹出一个对话框,您可以在其中选择代码清理设置。 对于此设置,您应该勾选重新排序类型成员。 第二次按下快捷键时,ReSharper将自动重新排序您的类成员。

1ReSharper Type Members XSD Schema


6
对于C#,您可以使用Regionerate来组织您的代码。您可以创建一个简单地组织代码但不使用区域的模板。请参考Regionerate

2
您可以使用Devexpress免费的DXCore产品(与创建CodeRush使用的相同的可扩展性框架)自己创建这样的函数。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接