是否有任何类型的插件或工具可用于 Visual Studio 2008 以按字母顺序排列方法?理想情况下,我想要一个自动或按需按字母顺序排列选择或指定类型(即只有方法,而不是成员变量)的工具。
5 回答
虽然 Resharper 有许多很酷的功能,但它对 CPU 和 I/O 的使用有很大的影响,并且使用起来可能非常复杂。除非您有资格获得一些非常具体的免费使用许可证,否则它也仅在商业许可下可用。
试试CodeMaid。它可以免费用于商业用途,并且性能开销要低得多。我发现它易于使用,并且非常适合按字母顺序排列方法。
要对文件进行排序,请通过解决方案资源管理器打开文件:
- 右键单击打开的文件
- Code Maid 菜单(可能在右键菜单顶部附近)
- 点击
Reorganize Active Document
或者,使用默认的 CodeMaid 热键CTRL+对您M的Z活动文件进行排序。
以下答案比 OP 要求的要远得多,因为我相信,仅按名称排序方法对于大多数程序员来说是远远不够的。大多数情况下,您希望您的方法、构造函数、字段、事件处理程序和接口实现彼此分离(即通过区域),并按各种标准排序。
为此,我尝试了 NArrange、Regionerate等,但我发现它们使用起来并不直观。所以ReSharper成为了我选择的工具。
正如@DavidN 已经提到的,ReSharper 可以按名称、可访问性、类型、只读等对您的类成员(字段、构造函数、方法、委托)进行排序......您还可以用区域包围特定成员。我最喜欢的是对接口成员(例如,#region IDisposable
其中包含void Dispose()
方法)和处理事件的方法进行分组的能力。
ReSharper 提供了两者 - 一种配置和触发类成员排序的简单方法。
配置布局
在 Visual Studio 中创建一个 XML 文件,并将默认类型成员布局(ReSharper 选项 > 语言 > C# > 类型成员布局)复制粘贴到该文件中。下载最新的XSD 架构。将架构文件添加到 Visual Studio 的架构文件(菜单 > XML > 架构... > 添加)。您现在应该能够使用 IntelliSense 支持编辑 XML 文件。
触发重新排序
如果您使用Visual Studio键盘方案(ReSharper 选项 > Visual Studio 集成)并按下Silent Code CleanupCtrl+E,F。将弹出一个对话框,您可以在其中选择代码清理设置。对于此设置,您应该检查Reorder type members。第二次按下快捷键时,ReSharper 将自动重新排序您的班级成员。
对于 C#,您可以使用Regionerate来组织您的代码。您可以创建一个简单组织代码但不使用区域的模板。
您可以使用Devexpress的免费DXCore产品(用于创建CodeRush的相同可扩展性框架)自己创建这样的功能。