17

我有一个现有的解决方案,涉及我已经研究了一段时间的多个 project.json(和相应的 xproj)项目。它在 Visual Studio 2015 中运行良好,但无法在 VS 15(预览版)中加载,仅显示每个加载失败图标。不打印任何消息。

发生了什么,我该如何解决?

4

2 回答 2

26

您的 xproj 可能是使用 dnx 工具的早期版本(自动)创建的。这使用了当时支持的特定 MSBuild 导入,但随着 DNX 工具的发展已被替换(最近:被 DotNet 替换)。

VS 2015 中保留了向后兼容性,但 VS 15中并未保留对这些旧 xproj 的支持。因此,您将需要编辑 xproj,或者(更简单)只需删除.xproj 和 .xproj.user,删除解决方案中的项目,然后重新添加它;这将使用当前工具重新创建 xproj。

如果你想手动编辑它,你应该替换:

<Import Project="$(VSToolsPath)\AspNet\Microsoft.Web.AspNet.Props"
    Condition="'$(VSToolsPath)' != ''" />
...
<Import Project="$(VSToolsPath)\AspNet\Microsoft.Web.AspNet.targets" 
    Condition="'$(VSToolsPath)' != ''" />

与:

<Import Project="$(VSToolsPath)\DNX\Microsoft.DNX.Props"
    Condition="'$(VSToolsPath)' != ''" />
...
<Import Project="$(VSToolsPath)\DNX\Microsoft.DNX.targets" 
    Condition="'$(VSToolsPath)' != ''" />

或者:

<Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.Props"
    Condition="'$(VSToolsPath)' != ''" />
...
<Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.targets"
    Condition="'$(VSToolsPath)' != ''" />

如您所见,这反映了工具的演变。VS 15 不再支持第一个选项。最后一个选项可能最接近 RTM 的样子,但在 VS 2015 中使用当前工具时不起作用。所以......你现在可能想要中间选项。

于 2016-04-01T08:13:02.777 回答
0

安装 Visual Studio 2015 工具(预览版 2):https ://go.microsoft.com/fwlink/?LinkId=827546

然后使用路径 C:\Program Files\dotnet\sdk 中的特定版本配置 global.json

为我工作...

于 2017-07-12T03:12:31.447 回答