Visual Studio中的Alphabetizing方法

时间:2009-01-21 18:21:58

标签: visual-studio visual-studio-2008 coding-style resharper organization

Visual Studio 2008是否有任何类型的插件或工具可用于按字母顺序排列方法?理想情况下,我想要一个工具,可以自动或按需按字母顺序排列选择或指定类型(即只有方法,而不是成员变量)。

5 个答案:

答案 0 :(得分:24)

Resharper有一个类型成员布局,可以按类型,辅助功能和字母顺序排列成员。

您还可以查看Ora,它会在Visual Studio中显示一个订购的窗格(即使您的来源可能不是这样)。链接已死。

答案 1 :(得分:21)

以下答案远远超出了OP的要求,因为我认为,对于大多数程序员而言,仅按名称排序方法还远远不够。大多数情况下,您希望您的方法,构造函数,字段,事件处理程序和接口实现彼此分离(即通过区域),并按各种标准排序。

为此,我尝试了NArrangeRegionerate和其他人,但我发现它们不直观易用。所以 ReSharper 成为我选择的工具。

正如@DavidN已经提到的,ReSharper可以按名称,可访问性,类型,只读等对您的类成员(字段,构造函数,方法,委托)进行排序......您还可以使用区域包围特定成员。我最喜欢的是能够对界面成员进行分组(例如,#region IDisposable中包含void Dispose()方法)和处理事件的方法。

ReSharper提供了两种方法 - 一种配置和触发类成员排序的简便方法。

配置布局

在Visual Studio中创建XML文件,并将默认类型成员布局(ReSharper选项>语言> C#>类型成员布局)复制粘贴到该文件中。下载最新的XSD schema。将架构文件添加到Visual Studio的架构文件(菜单> XML>架构...>添加)。您现在应该可以使用IntelliSense支持编辑XML文件。

触发重新排序

如果您使用 Visual Studio 键盘方案(ReSharper选项&gt; Visual Studio集成)并按 Ctrl + E,F < em>无声代码清理。将弹出一个对话框,您可以在其中选择代码清理设置。对于此设置,您应该检查重新排序类型成员。第二次按快捷键时,ReSharper将自动为您的班级成员重新排序。

1ReSharper Type Members XSD Schema

答案 2 :(得分:17)

虽然Resharper有许多很酷的功能,但它对CPU和I / O使用有很大的影响,并且使用起来非常复杂。除非您有资格获得一些非常具体的免费使用许可,否则它也只能在商业许可下使用。

试试CodeMaid。它可以免费用于商业用途,并且具有低得多的性能开销。我发现它易于使用,对于按字母顺序排列的方法非常有用。

要对文件进行排序,请通过解决方案资源管理器打开文件:

  1. 右键单击打开的文件
  2. Code Maid菜单(可能位于右键菜单顶部附近)
  3. 点击Reorganize Active Document
  4. 或者,使用默认的CodeMaid热键 CTRL + M Z 对活动文件进行排序。

答案 3 :(得分:6)

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

答案 4 :(得分:3)

您可以使用Devexpress'免费DXCore产品(用于创建CodeRush的相同扩展性框架)自行创建此类功能。