将包含类的源文件列表移动到另一个文件夹并自动更改名称空间

时间:2009-05-19 22:38:26

标签: visual-studio visual-studio-2008 resharper

假设我在文件夹Forms中有100个winforms。所有表单类都属于ProjectName.Forms命名空间。我想将所有这些表单移动到文件夹WinForms,我希望他们的名称空间更改为ProjectName.WinForms。

有没有办法在不手动更改每个表单的命名空间的情况下自动执行此操作?我有一个Resharper,但没有找到任何可以帮助的选项。

提前谢谢。

3 个答案:

答案 0 :(得分:1)

对于这些类型的场景,我通常使用一些shell脚本魔法(你需要cygwin和/或Perl等)。类似的东西:

for i in *; do perl -pi -e's / ProjectName.Forms / ProjectName.WinForms / g'$ i;完成

我认为VS也可能有一些内置的广泛搜索和替换功能。

答案 1 :(得分:1)

您实际上可以使用Visual Studio替换文件命令。在“编辑”菜单下 - >查找和替换 - >替换文件。

在“查找范围”下拉列表旁边,您有一个构建器按钮。单击该按钮将弹出一个窗口,您可以在其中指定要查看的文件夹。

这是一个筛选:

alt text http://img148.imageshack.us/img148/5472/replaceinfiles.png

答案 2 :(得分:1)

您可以使用“替换为文件”并将替换限制为特定文件夹,也可以匹配整个单词以避免不必要的替换。

首先,将所有'命名空间ProjectName.Forms'替换为'namespace ProjectName.WinForms',然后如果你有任何依赖代码替换'using ProjectName.Forms;'使用'using ProjectName.WinForms;'在那。

(编辑:假设c#)