2010-10-28 60 views
0

可能重复:
What's the best way to do a bulk namespace rename on a large c# application?重构在溶液中的命名空间

,我改变了默认的命名空间为我的解决方案项目。 我可以使用Resharper来调整一个项目中的命名空间。 但我正在寻找一些可以调整整个解决方案中的命名空间的工具。 我正在使用VS2008亲。是否有refacotring工具,可以调整我的解决方案的所有项目中的名称空间? (这是解决方案中的大约60个项目!疼痛!)

+1

我想你需要添加一些语言特定的标签 – 2010-10-28 18:49:02

+1

Resharper将重构整个解决方案。如果我更改命名空间,它将在整个解决方案中更改它,而不仅仅是一个项目 – 2010-10-28 18:53:40

+0

@Mike:嗯..我会再试一次...将会很棒 – Bohn 2010-10-28 18:54:38

回答

2

重构一个名称空间可在ReSharper的工作......你要重命名的命名空间中单击鼠标右键,挑refactor->refactor this,然后选择rename namespace在编辑器中的小型弹出窗口。 I.E namespace myproj.data { - 右键单击​​'数据'

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

你也可以右键单击并选择refactor->rename ...我已经测试了两个,他们都工作。

+1

这实际上是Visual Studio中的一项内置功能,它似乎在所有使用相同名称空间的项目中重命名。您也可以在制作文件之前预览对文件所做的更改。 – 2010-10-29 16:09:09

1

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

+0

耶!但这意味着对于这60个项目中的每一个,运行“查找替换”59次! – Bohn 2010-10-28 18:51:48

+1

查找和替换可以在整个解决方案中工作。将“查找”更改为“整个解决方案”。 – 2010-10-28 18:52:45

1

R#有一个选项Adjust Namespaces。

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

+0

是的,我做到了。当我在解决方案上运行它时,没有对话框弹出,但是当我在每个项目上执行时,会弹出adjsut命名空间。 – Bohn 2010-10-28 18:58:17

+1

你说得对,它适用于项目内的项目和文件夹,但不适用于解决方案。至少你不必为每个文件独立完成。 – Vadim 2010-10-28 19:06:21

+0

OP已经提到他们可以做到这一点。 – 2010-10-28 19:15:19