如何在不破坏解决方案的情况下重命名项目

10
当我在解决方案中重命名一个项目,然后尝试构建该项目时,会出现错误:“找不到项目文件“xyz.csproj”。其中xyz是旧的项目文件名称!”
令人烦恼的是,我可以在我的项目和解决方案中搜索旧的项目文件名称,但搜索结果没有任何内容,当我单击错误时,VS不做任何反应。
因此似乎没有办法找到旧的引用位置。
这是一个托管Silverlight页面的Web项目,如果有所区别,请注意。

你是通过VS、Windows资源管理器(文件浏览器)还是源代码控制客户端进行重命名的? - jyoungdev
当您打开解决方案时,它能加载相关的项目吗? - Igor Zevaka
可能是重复的问题:如何在Visual Studio内部重命名项目文件夹? - Tim Abell
4个回答

19

这是我在重命名项目时遵循的步骤:

  1. 在解决方案中单击项目并将其重命名。这将重命名 .proj 文件和项目名称(但不包括包含项目的目录)。
  2. 关闭解决方案,重命名项目文件夹。此阶段,解决方案仍引用旧文件夹。
  3. 打开 sln 文件并用新名称替换旧名称。这应该只有一个地方。它会类似于这样。
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SolutionName", "OldProjectName\NewProjectName.csproj", "{98644DD0-5AB5-4CAC-8D83-CCB8EEEFE234}"
您需要将其制作成这个样子:
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SolutionName", "NewProjectName\NewProjectName.csproj", "{98644DD0-5AB5-4CAC-8D83-CCB8EEEFE234}"

  1. 将旧文件夹的名称更改为新名称。
- Hexo
另一个答案说,在重命名项目命名空间后,需要在解决方案属性中卸载它,然后关闭项目,重命名项目文件夹,再次加载它,然后在属性中可以指向正确的路径(允许编辑),然后(作为未提到的额外步骤)删除对该项目的引用并重新添加它(如果它无法编译)。 - FabianSilva

2

对于所有的 Visual Studio 项目,通常可以直接关闭 Visual Studio,在文本编辑器中编辑解决方案/项目文件,然后重新打开 Visual Studio。它们只是 XML 文件。只要小心不改变任何重要内容,在文本编辑器中进行搜索和替换就可以了。


0

我还必须重命名命名空间并将项目的启动对象指向重命名的程序:

<old_project>.Program to <new_project>.Program

0

好的,这是我的问题。 我已经删除了对我重命名的项目的服务引用,但仍然收到错误消息,然后通过一些试错添加和删除项目,我发现有一个“WCF Ria Services Link”项目属性。

这有点陷阱。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接