0

目前我遇到了一个非常奇怪的问题,我自己无法解决。

环境

  • 视窗 8.1
  • Visual Studio 2013 终极更新 1
  • 视窗电话 8 SDK
  • 锐化 8
  • Xamarin(只是说,我不认为这是问题所在)

我有一个包含单个 Windows Phone 8 项目的解决方案。只有一个来自标准模板,还没有定制。我有第二个解决方案,其中包含一个 PCL 项目(如果你愿意,可以称之为核心)。这两个解决方案/项目目前都是独立的,因为我遇到了以下问题:

问题

如果我加载 WP8-Solution,一切都会按预期工作。Visual Phone Designer 加载并正在工作。按预期拥有 IntelliSense。在设备和模拟器上调试就像一个魅力。没什么好好奇的。

下一步是切换到核心解决方案,进行一些更改并切换回 WP8 解决方案。

现在问题开始了。由于标记错误,Visual Phone Designer 无法加载。在查看 xaml 代码时,VS 无法识别与 Windows 8 Phone SDK 相关的任何内容。IntelliSense 停止工作,编译失败,无法在设备或模拟器上启动。似乎 VS 停止将该项目识别为 WP8 项目。

现在变得更有趣了。打开 .csproj 文件时,根为:

<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

由于我不知道ToolsVersion到底是做什么的,所以我在MSDN中查找了它。它们还提供注册表项 ( HKLM\Software\Microsoft\MSBuild\ToolsVersions\12.0 ),MSBuild 可以在其中找到正确的工具。查了一下,我看到了四个条目:12.0、4.0、3.5、2.0。

为了测试,我更改ToolsVersion="12.0"ToolsVersion="4.0"重新加载了项目。宾果游戏:它又开始工作了。它一直在工作,直到我更改为另一个解决方案或重新启动 VS。然后我再次得到相同的错误,如前所述。

有趣的是:如果我将 ToolsVersion 改回 12.0,它会再次工作,直到解决方案更改或 VS 重新启动。

看来我可以无限期地做到这一点。非常奇怪的行为。

到目前为止我尝试过的

我卸载了所有东西:Visual Studio、Resharper、Xamarin、Windows Phone 8 SDK。运行 CCleaner(我认为这没有多大帮助),重新启动计算机并再次安装所有内容。

可以肯定的是,Resharper 或 Xamarin 不会产生此错误,我起初在没有它们的情况下尝试过,但我仍然得到了它。

我不确定这种问题究竟是什么时候开始的,因为我开发了一些没有这个问题的手机应用程序。

感谢您的帮助,我很感激!问题越来越烦人。

如果您需要更多信息,请给我留言。

4

0 回答 0