C# 帮助我在VS 2010中撤消(意外)命名空间重命名

C# 帮助我在VS 2010中撤消(意外)命名空间重命名,c#,visual-studio-2010,asp.net-mvc-3,namespaces,rename,C#,Visual Studio 2010,Asp.net Mvc 3,Namespaces,Rename,我做了一件坏事,我需要帮助来消除它,因为我不知道在哪里进行纠正,也不想进一步把事情搞砸 我在VS2010中有一个ASP.NET MVC3解决方案,其中包含三个项目 在其中一个项目中,我有三个文件夹,每个文件夹中有几个文件 我意识到我错误地在错误的文件夹中创建了一个文件,所以我将它拖到了正确的文件夹中 完成此操作后,我通过键入正确的名称空间重命名了名称空间,引用了我刚刚将其移动到的文件夹 当我这样做的时候,神奇的光标,或者不管它叫什么,出现在我刚输入的新文本下…所以我就在上面徘徊。它问我是否要将旧

我做了一件坏事,我需要帮助来消除它,因为我不知道在哪里进行纠正,也不想进一步把事情搞砸

我在VS2010中有一个ASP.NET MVC3解决方案,其中包含三个项目

在其中一个项目中,我有三个文件夹,每个文件夹中有几个文件

我意识到我错误地在错误的文件夹中创建了一个文件,所以我将它拖到了正确的文件夹中

完成此操作后,我通过键入正确的名称空间重命名了名称空间,引用了我刚刚将其移动到的文件夹

当我这样做的时候,神奇的光标,或者不管它叫什么,出现在我刚输入的新文本下…所以我就在上面徘徊。它问我是否要将旧值重命名为刚输入的新值。所以,我点击yes

我想你们中的一些人已经知道这意味着什么,但我一点也不知道。是的,我是新来的。:)

在此过程中,我的解决方案中引用原始文件夹的所有using语句都已重命名。原始文件夹在我尝试添加的任何using语句中都不再可用

同样值得注意的是,我不知道是什么在做这件事,并且认为我的解决方案已损坏或其他什么,所以我清理、构建、重建并重新启动…所以撤销不是一个选项

在我的解决方案中,我有哪些恢复“正常”的选项? 谢谢

更新,问题已解决:

我所要做的就是重命名坏文件夹,这样我就可以用坏文件夹的原始名称在项目中创建一个新文件夹。然后我将文件从坏文件夹移到新文件夹中,并更正了它们的名称空间

扔掉旧文件夹。 使用语句更新。 构建解决方案。 一切都很好

我担心更名会比它更深入。我不知道为什么会这样,但谢天谢地,它做到了


感谢所有回复的人。今晚我将探索SVN

例如,在名为
MyMvcProject
的项目中,有两个名为
Views
ViewModels
的文件夹;您的名称空间将是
MyMvcProject.Views
MyMvcProject.ViewModels
; 然后将
MyMvcProject.Views
重命名为
MyMvcProject.ViewModels
; 要撤消,首先排除名为
ViewModels
的文件夹-右键单击该文件夹,然后选择
exclude From Project
;现在,打开
查找和替换
窗口-Ctrl+f-选择
快速替换
选项卡,在
查找什么
文本框类型
。视图模型
替换为
文本框类型
。视图
;将
查找
设置为
当前项目
,然后单击
全部替换
; 现在必须将项目中的所有
ViewModels
替换为
ViewModels
,而不是旧的ViewModels,因为您从项目中排除了
ViewModels
文件夹;现在,包括排除的文件夹(
ViewModels
)并重建项目;如果您在任何类型的命名空间中遇到错误,请插入以下using语句:

using MyMvcProject.Views;

注意。

您的项目是否有可能受到源代码控制(SVN、TFS等)?啊,没有。这是我要学习的一长串东西。虽然这当然是现在探索它的原因,呃。你能将名称空间重命名为原始名称空间并用“神奇光标”进行重构吗?然后返回并仅重命名新文件夹中的新文件夹?您应该将源代码管理提供程序(如TFS、subversion或git)放在列表的顶部。我已经使用了所有这些工具,对于刚刚学习该领域的人,我建议从subversion开始,因为它始终按照您期望的方式工作(git更高级,tfs比subversion有更多的“陷阱”)。请查看,并在您的windows框上进行超级简单的设置。+1(或者更确切地说,+Infinity)提供学习源代码管理的建议,以及git或其他分布式源代码管理系统的进一步+1。源代码控制对于任何非平凡的编码项目来说都是绝对必要的,我无法计算我被它保存了多少次。放弃周末计划的一切,花时间学习一个源代码控制系统。(我个人的建议是git或mercurial(后者更容易)-这两种都不需要在您的工作场所安装中央服务器;您可以在自己的机器上安装所有服务器。)