ASP.Net vnext beta 5参考非vnext项目

ASP.Net vnext beta 5 reference non vnext project

迁移到 beta5 后,我似乎无法再引用通常的 "Class library" 项目。不过它与 beta4 配合使用效果很好。

重现步骤:

  1. 创建ASP.Net 5 Web 应用程序(或"Class Library (package)")
  2. 创建 "Class library" 项目(不是包)
  3. 将 Web 应用程序的引用添加到 Class 库项目

如果 运行 "dnu restore" 来自 PowerShell,它 运行 没有错误,但是 visual studio 显示引用错误,并且在构建过程中我得到:错误依赖性 ClassLibrary1 >= 1.0.0-* 无法解析 WebApplication1

平台:Windows8.1 x64,Visual StudioEnterprise 2015 (RTM)

事实证明,我的库项目是为 .Net Framework 4.5.2 构建的,在 beta5 中,由于某种原因,这不适用于 dnx 4.5.1。 将库降级到 Framework 4.5.1 可解决此问题。

它仍然适用于 beta4。

最终我在 beta6 中得到了 dnx 46 和 Framework 4.6

这是一个已知问题,应该会在未来的版本中尽快解决。正如您所发现的,它来自参考项目中的目标框架版本高于目标项目中的版本,这导致它无法被解析。