我可以从命令行重命名C#符号吗?

时间:2018-08-09 18:35:39

标签: c# command-line msbuild refactoring

Visual Studio具有“重构重命名”功能,在其中我可以右键单击任何类型或成员并将其重命名,它将更新项目或解决方案中的所有引用以匹配。是否可以通过MSBuild命令行工具访问此功能,而不必打开Visual Studio?

(之所以这样做,是因为我有一个很大的项目,以至于Visual Studio在试图计算需要重命名的位置时内存不足)。

2 个答案:

答案 0 :(得分:2)

据我所知,这不是Visual Studio之外的功能;尽管您可能有几种方法可以完成它。

我要尝试的第一件事是使用更轻便的编辑器,VSCode,Atom等。它使用较少的内存,但仍然希望可以完成重命名。您可能必须使用正则表达式查找/替换来完成它;能否选择一个正确的正则表达式取决于这种选择。

如果您实际上可以在VS中打开项目而没有(至少没有问题),那么您也可以开始卸载与重命名无关的项目。如果您知道仅在某些项目中可用,则卸载其他所有内容,执行重命名,然后重新加载项目。如果它是“无处不在”,那么您仍然可以执行类似的操作,在一些项目中执行重命名,卸载它们,再加载下一个,重命名,等等。虽然我实在不是100 %肯定会起作用,但我从未尝试过。

不管您尝试什么,如果您尚未确保将代码放入源代码管理中,以防万一。我确定这是可行的,但也许无法通过VS命令行。

答案 1 :(得分:1)

不。没有可用的msbuild目标,任务或工具可从命令行重命名变量。

您当然可以写自己。 :)

但是我强烈建议使用Visual Studio Code作为Visual Studio的替代方案来加载大量项目。这是一款出色的跨平台IDE。谁知道呢,也许有人为它写了一个插件来重命名变量... ??