如何在将项目路径重命名后将现有项目添加到Visual Studio 2012

26
我有一个 C# 类库项目作为我的解决方案的一部分。后来我更新了该项目的根文件夹。由于该解决方案指向了错误的路径,因此我不得不“删除”该项目,然后重新添加它。 但是,当我添加现有项目时,它会显示“项目文件 \myproject.csproj' 已被移动、重命名或不存在于计算机上”。
这很令人困惑,因为 .sln 文件没有引用该项目。(我检查了文本内容) Visual Studio 如何使用旧的文件夹路径缓存项目?该解决方案在 TFS 中受到版本控制,但是映射指向新的文件夹结构,因此更加令人困惑,不知道它是从哪里获取旧的文件夹路径的。
编辑:我检查了 .csproj 文件和 .csproj.vspscc 文件,它们都没有路径变量。 我还尝试删除了 .suo 文件。

4
尝试删除根文件夹中隐藏的.suo文件。 - Patrice Gahide
我以前也遇到过这个问题。似乎VS没有一个合适的重命名功能,因此我通常会创建一个新的解决方案并使用正确的名称,然后将所有源文件添加到其中。他们应该修复它,这将使生活变得更加轻松... - Dion V.
你能解释一下TFS如何与此相关吗?你的项目是否在源代码控制下,解决方案呢?你是通过TFS重命名项目还是在本地文件系统中进行的?为什么你删除了项目而不是在解决方案中将其移除?当你移除和添加项目时,SLN文件是否被签出? - Just TFS
1
@Just TFS - 我只是想提到TFS,以便完整起见,尽管它可能不会引起问题。删除项目时,我指的是从解决方案中“移除”项目引用,而不是物理上删除项目。此外,我的项目和解决方案都在版本控制下。我通过文件系统重命名了项目,然后成功地将绑定映射到TFS。 - arviman
@PatriceGahide - 我之前也尝试过那个方法。我又试了一遍,现在它可以工作了。如果你把你的评论添加为答案,我会关闭这个问题。 - arviman
1
我通过文件系统重命名了项目,然后成功地将绑定映射到了TFS。我建议将来通过TFS进行此操作,因为这可能有助于避免您所看到的问题。 - Just TFS
1个回答

52

多年来,Visual Studio存在这个问题。在这种情况下,删除根文件夹中的隐藏的.suo文件并重新启动VS将重建一个正确的.suo文件,并几乎总是消除该问题。

如果您使用TFS,请查看原帖中Just TFS的评论以避免将来出现此问题。


8
在 VS2015 中,我遇到困难的文件是 ./.vs/[项目名称]/v14/.suo - MattGerg
1
我的VS2015问题文件是[解决方案文件夹]/.vs/[解决方案名称]/v14/.suo。 - philorube
刚在2017年遇到了同样的问题。很快就会将代码库转换为Git... - Jörgen Sigvardsson

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