当我打开我的解决方案时,我会收到一个包含此警告的对话框。解决方案(一个Web应用程序,一个类项目)构建没有错误。
如何确定导致问题的属性,并解决错误?
检查.sln文件中的SccNumberOfProjects,它可能与您的实际项目编号不同。
我修复了vs2012中的类似问题。
在我的情况下,问题是MySolutionName.sln文件中GlobalSection内的SccProjectName0属性值为空。
我通过设置SccProjectName0值和另一个解决方案中此字符串值的副本,并将字符串中项目的名称替换为当前的名称来解决它(BTW - 如果您的项目名称为空格(''),则需要替换为'\ u0020')。
*
在我的情况下,问题开始后,我错误地打开了由TFS控制的解决方案与同一解决方案的旧MySolutionName.sln文件从该解决方案由VSS控制的时间。
VS2015更新3. [GlobalSection(TeamFoundationVersionControl)= preSolution]在解决方案文件中重复。底部副本包含一个先前已删除的项目...因此删除该重复项修复了该问题。我认为重复是由以前的合并问题引起的。
我可以添加一个可能的解决方案 - 一个狡猾的合并意味着GlobalSection(TeamFoundationVersionControl)部分中的SccProjectUniqueName / SccProjectName / SccLocalPath节之一具有不唯一的数字,即使SccNumberOfProjects是正确的。修正了编号,错误消息消失了。
VS 2019 - 我在VS 2019中第一次打开VS 2017项目。在“输出”窗口中,单击“显示输出:”DDL并查看您的选项,因为您可能会看到其他错误信息。
就我而言,解决方案是重新配置2019年的源代码控制映射。
我有同样的问题,我的解决方案是:
这适合我。
对我来说,问题是每行末尾的空格(由于复制粘贴)。通过删除它们我没有再次得到错误。
在VS 2015中,我有两个部分“GlobalSection(TeamFoundationVersionControl)= preSolution”
第一个包括添加到解决方案中的最新项目,第二个项目(在解决方案文件的末尾附近)没有。删除第二个后,解决方案在VS 2015中打开,没有任何错误。
其他答案已经解释了如何解决问题。也许我可以帮助不再解决问题:
我是如何得到这个问题当我向它添加一个新项目时,我们的解决方案文件变得混乱,而另一个开发人员也添加了一个新项目并提交了他的更改(我没有在我的本地系统中获得)。当我开始提交我的更改时,我不得不合并.sln文件,我显然搞砸了:-)
我学到的是
合并解决方案文件很糟糕。如果添加项目,请执行以下操作:1。获取最新版本2.添加项目3.提交
如果您在待处理的更改中看到解决方案文件,但在比较模式下没有看到更改,则必须按“全部保存”。在添加新项目时,VisualStudio也改变了解决方案。然而,目前这是一个未得到改变的变化。