0

我有一个 vNext 项目,它使用 dnu wrap 来引用旧式类库。一切都在 4 台机器上运行,但一台机器给我带来了麻烦。我已经从操作系统重新安装,但仍然有问题。

我收到错误:无法解析参考

C:\Projects\DataAccess\DataAccess.csproj。

我知道路径是正确的。我可以复制它,然后将其粘贴到文件打开对话框中,然后文件就会打开。

我注意到,在这台机器上,它不是在解决方案根文件夹中创建的 wrap 文件夹。

在我的 asp.net 5 project.json 我有这一行:

"scripts": {
    "prerestore": [
      "dnu wrap ../DataAccess/DataAccess.csproj"
    ]
},

我的 global.json 有这个:

"projects": [
    "wrap"
],

更新: 我将 -v 标志添加到 dnu wrap 以进行详细日志记录。我收到这条消息:

未为项目 DataAccess.csproj 设置 OutputPath 属性。请检查以确保您为此项目指定了有效的配置和平台组合。配置='调试'平台='MCD'。您可能会看到此消息,因为您正在尝试构建没有解决方案文件的项目,并且指定了该项目不存在的非默认配置或平台。

这适用于其他 4 台机器。只是这台机器不工作。

我确实有一个解决方案文件。

查看项目属性,我看到 DataAccess 项目的输出路径设置为 bin\Debug。我查看了 csproj 文件,看到了带有值 bin\debug(用于调试构建)的 OutputPath 标记,以及另一个带有 bin\Release(用于发布构建)的标记。

4

1 回答 1

0

错误消息显示 Platform='MCD'。这是 HP 在一台 HP 笔记本电脑上设置的环境变量。其他机器都没有这个,也没有惠普。我删除了这个变量,它解决了这个问题。

我不知道那个变量是干什么用的,我也不确定惠普为什么要添加它。其他东西可能会破坏,但我不使用供应商安装的工具。

我不知道为什么 dnu 在其他盒子没有的时候使用这个变量。

于 2016-03-04T20:00:36.120 回答