14

我有一个包含多种方法的程序,但是,当我添加了新方法时,其中一些在源代码文件中的逻辑顺序不正确。我在想:

  • 有没有一种方法可以轻松地重新排序文件中的函数,而不必突出显示整个方法,并将其剪切并粘贴到正确的顺序?例如,是否有某种方法可以查看列表中的所有方法并将列表中的项目拖到新的顺序中?
  • 是否有一种工具可以分析我的源代码并自动建议它认为对我的方法最合乎逻辑的顺序,然后为我重新排序?

我对此做了一些研究,我能找到的唯一答案是使用:

http://msdn.microsoft.com/en-us/library/microsoft.visualstudio.vcprojectengine.vclinkertool.functionorder%28v=vs.80%29.aspx

但是此工具使用文本文档将方法按所需顺序排列。有没有更简单的方法来做到这一点?

4

4 回答 4

19

我正在为 Visual Studio 2015 使用 Resharper,它使用键盘快捷键上下移动整个方法。

ctrl+ alt+ shift+ (up-arrowdown-arrow)

于 2015-10-06T13:28:55.160 回答
10

如果您只是在寻找一种在代码编辑器窗口中剪切和粘贴/拖动整个方法的简单方法,您可以使用 Visual Studio 中的代码大纲功能来实现。

  1. 在菜单中选择编辑 > 大纲 > 折叠到定义选项。这将导致所有方法和属性在编辑器窗口中显示为单行。
  2. 然后,您可以轻松查看订单并将它们剪切并粘贴到正确的订单中。您也可以使用鼠标选择整个方法行并将其拖动到文件中的新位置。

我以前从未使用过 ReSharper,所以我无法谈论实际的功能,但是在快速搜索网络以获得比源代码大纲选项更好的解决方案时,我发现 ReSharper 可能会使用他们的“文件结构”来支持这一点对话:

http://www.jetbrains.com/resharper/features/navigation_search.html#File_Structure

于 2012-07-10T12:19:25.757 回答
1

是否有一种工具可以分析我的源代码并自动建议它认为对我的方法最合乎逻辑的顺序,然后为我重新排序?

市场上没有任何东西可以为您做到这一点。

对于代码文件的手动操作,请查看Resharper,其中包括用于在代码文件中向上/向下移动方法、属性或字段的键盘快捷键。

于 2012-07-10T12:25:42.100 回答
1

Visual Studio的CodeMaid扩展具有 Reorganize Active Document 功能,该功能将移动 C# 代码块并按照 Microsoft 的 StyleCop 约定或您自己的偏好添加区域标签。

于 2021-04-28T14:43:54.760 回答