【问题标题】:Refactor the namespaces in a SOLUTION [duplicate]重构解决方案中的命名空间 [重复]
【发布时间】:2010-10-28 18:46:44
【问题描述】:

可能重复:
What's the best way to do a bulk namespace rename on a large c# application?

我正在更改解决方案中我的项目的默认命名空间。 例如,我可以使用 Resharper 在一个项目中为我调整命名空间。 但我正在寻找一些可以调整整个解决方案中的命名空间的工具。 我正在使用 VS2008 专业版。是否有一个重构工具可以调整我的解决方案的所有项目中的命名空间? (解决方案中大约有 60 个项目!痛苦!)

【问题讨论】:

  • 我认为您需要添加一些特定于语言的标签
  • Resharper 将重构一个完整的解决方案。如果我更改一个命名空间,它会在整个解决方案中更改它,而不仅仅是一个项目
  • @Mike: 嗯……我会再试一次……会很棒
  • @Mike:好的,我做到了。在解决方案上运行时不会弹出对话框,但在每个项目上运行时都会弹出 adjsut 命名空间。

标签: refactoring namespaces


【解决方案1】:

重构命名空间确实可以在 Resharper 中工作...右键单击要重命名的命名空间,选择 refactor->refactor this,然后在编辑器的小弹出窗口中选择 rename namespace。 IE namespace myproj.data { - 右键单击​​“数据”

选择一个新名称,单击“下一步”,Resharper 将在整个应用程序中重命名命名空间。

您也可以右键单击并选择refactor->rename...我都测试过,它们都可以工作。

【讨论】:

  • 这实际上是 Visual Studio 中的一个内置功能,它似乎会在使用相同命名空间的所有项目中重命名。您也可以在对文件进行更改之前预览它们。
【解决方案2】:

查找和替换?
有多少项目?你不能只做每个项目。你不必多次这样做,对吧?

【讨论】:

  • 是的!但这意味着对于这 60 个项目中的每一个,运行“查找替换”59 次!
  • 查找和替换可以在整个解决方案中使用。将“查找”更改为“整个解决方案”。
【解决方案3】:

R# 有一个选项调整命名空间。

右键单击解决方案。然后从上下文菜单中选择重构并单击“调整命名空间...”

【讨论】:

  • 是的,我做到了。在解决方案上运行时不会弹出对话框,但在每个项目上运行时都会弹出 adjsut 命名空间。
  • 你说得对,它适用于项目中的项目和文件夹,但不适用于解决方案。至少你不必为每个文件单独做。
  • OP 已经提到他们可以做到这一点。
猜你喜欢
  • 2010-09-05
  • 1970-01-01
  • 2020-11-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-09-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多