【问题标题】:how to rename a project without killing solution如何在不杀死解决方案的情况下重命名项目
【发布时间】:2011-03-13 15:31:58
【问题描述】:

当我在解决方案中重命名项目,然后尝试构建该项目时,我收到错误消息:“找不到项目文件“xyz.csproj”。其中 xyz 是旧项目文件名!

烦人的是,我可以在我的项目和解决方案中搜索旧的项目文件名,搜索结果什么也没有,当我点击错误时 VS 什么也不做。

所以似乎没有办法找到旧参考在哪里。

这是一个托管 silverlight 页面的 .web 项目,如果这有什么不同的话。

【问题讨论】:

标签: visual-studio silverlight


【解决方案1】:

对于所有 Visual Studio 项目,您通常只需关闭 Visual Studio,使用文本编辑器编辑解决方案/项目文件,然后重新打开 Visual Studio。它们只是 XML。只要您注意不要更改任何重大内容,文本编辑器中的搜索和替换就可以解决问题。

【讨论】:

    【解决方案2】:

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

    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}"
    

    【讨论】:

    • 4.将旧文件夹的名称更改为新名称
    • another answer说,重命名项目命名空间后,在解决方案的属性上卸载它,然后关闭项目,重命名项目的文件夹,再次加载它,然后在属性上可以指向正确的路径(它允许编辑它)然后(作为 npot 提到的附加步骤)删除对该项目的引用并再次添加它(如果它无法编译)
    【解决方案3】:

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

    这有点像个陷阱。

    【讨论】:

      【解决方案4】:

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

      <old_project>.Program to <new_project>.Program
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-07-16
        • 1970-01-01
        • 1970-01-01
        • 2014-07-19
        相关资源
        最近更新 更多