Visual Studio警告:“某些与解决scheme关联的属性无法读取”

当我打开我的解决scheme时,我收到了一个警告对话框。 解决scheme(一个Web应用程序,一个类项目)的构build没有错误。

我怎样才能确定哪些属性导致问题,并解决错误?

我只是解决了一个VS2010解决scheme与35个项目类似的问题…原因是重复的

GlobalSection(TeamFoundationVersionControl)

解决scheme文件中的部分。 我closures了解决scheme,删除了重复的GlobalSection(TeamFoundationVersionControl)configuration并重新加载解决scheme,警告消息已经消失。

如果这不是你的问题,考虑到你只有2个项目,我会抛出破解的解决scheme文件,创build一个新的解决scheme,并重新添加您的两个项目…

似乎这个警告有很多原因。 我得到它,因为我的解决scheme文件SccNumberOfProjects = 4时,只有3。

我刚刚在VS2012中修复了一个类似的问题,共有44个项目。

原因是重复的GlobalSection(TeamFoundationVersionControl)部分(一个Boycs的答案)的组合,但我也有几个项目重复 – 以及一些项目,最近被删除的引用 – GlobalSection(TeamFoundationVersionControl)我保留的部分。

一旦我确定所有参考项目都与我的解决scheme中的实际项目1:1相对应,警告就消失了。

另外:我怀疑在分支和提交合并期间,大部分的这些问题都可以避免,并且更加注意.sln,但是谁知道VS有时候在想什么…

上面有很多错误。 我把项目改名,保存closures,重新打开后改名。 这重新创build.sln文件,并在我的情况下拿出所有额外的项目。

对我来说,问题是在每行的末尾有空格(由于复制粘贴)。 通过删除它们,我没有再次得到错误。

在Boycs的领导下解决了VS2012中一个相同的错误信息。 对我来说,问题是两个无关GlobalSection(SolutionConfigurationPlatforms) = preSolution块在我的SLN文件的底部。

我在vs2012中修正了类似的问题。

在我的情况下,问题是在MySolutionName.sln文件GlobalSection SccProjectName0属性值是空的。

我解决了它通过设置SccProjectName0值与从另一个解决scheme,这个string值的副本,并replacestring中的项目的名称到当前一个(顺便说一句 – 如果您的项目名称作为空间(''),它需要换成'\ u0020')。

*

在我的情况下,问题开始后,我错误地打开解决scheme控制由TFS旧的MySolutionName.sln文件的解决scheme是由VSS控制同一解决scheme。

我有同样的问题,我的解决scheme是:

  1. 在VS中打开解决scheme
  2. 将解决scheme平台设置为默认
  3. 保存
  4. closuresVS
  5. 在Notepad ++(或任何其他编辑器)中打开.sln文件
  6. 从各处删除所有其他解决scheme平台项目
  7. (例如:{73E03C8F-1F76-45E2-9D45-FA040A63F0AA}。释放|任何CPU.Build.0 =释放|任何CPU)
  8. 保存并重新打开解决scheme。

这对我有用。

在VS 2015中,我有两个部分“ GlobalSection(TeamFoundationVersionControl)= preSolution

第一个包括最新项目添加到解决scheme,第二个(靠近解决scheme文件的结尾)没有。 删除第二个之后,在VS 2015中打开的解决scheme没有任何错误。

VS2015更新3. [GlobalSection(TeamFoundationVersionControl)= preSolution]被复制到解决scheme文件中。 底部副本包含一个以前删除的项目…所以删除重复修复了这个问题。 我认为重复是以前的合并问题造成的。

其他答案已经解释了如何解决这个问题。 也许我可以帮助不要再次问题:

我如何解决问题当我向其中添加一个新项目时,我们的解决scheme文件混淆了,而另一个开发人员也添加了一个新项目并提交了他的更改(我没有在本地系统上)。 当我开始提交我的更改时,我必须合并.sln文件,我明显地搞砸了:-)

我学到的是

解决scheme文件很难合并。 如果添加项目,请执行以下操作:1.获取最新版本2.添加项目3.提交

如果您在待定更改下看到解决scheme文件,但在比较模式中看不到更改,则必须按“全部保存”。 在添加新项目的同时,VisualStudio也改变了解决scheme。 但是,这是目前尚未得到保证的变化。

最好的解决办法是强制VS重新生成configuration。

  1. 用一些文本编辑器打开sln文件。
  2. 向下滚动,直到到达最后一个“End Project”元素。
  3. 之后删除所有内容。
  4. 保存,closures并重build解决scheme,一切都将被重新生成。