Kri*_*per 4 .net c# msbuild vs-web-site-project visual-studio-2015
我遇到了 MSBuild 的依赖问题。我将 Microsoft.Tpl.Dataflow 的 NuGet 包添加到我的解决方案中的项目中。这导致引用第一个项目的解决方案中的网站项目构建失败。获取正确的运行时版本似乎存在问题。
这是我在使用 MSBuild 构建解决方案时遇到的众多错误之一。
C:\src\MyWebsite.metaproj:警告 MSB3268:无法解析主要引用“C:\src\projects\ReferencedProject\bin\Debug\ReferencedProject.dll”,因为它间接依赖于框架程序集“System.dll”。运行时,版本 = 4.0.0.0,文化 = 中性,PublicKeyToken = b03f5f7f11d50a3a”,在当前目标框架中无法解决。“.NETFramework,版本 = v4.5”。要解决此问题,请删除引用“C:\src\projects\ReferencedProject\bin\Debug\ReferencedProject.dll”或将您的应用程序重定向到包含“System.Runtime, Version=4.0.0.0, Culture=中性,PublicKeyToken=b03f5f7f11d50a3a”。
令人困惑的是,该解决方案在 Visual Studio 中构建得很好。此外,解决方案构建中的所有其他项目 - 只有网站项目失败。
我试过了
我仍然无法构建它。我怎样才能解决这个问题?
原来 aspnet_compiler.exe(由 msbuild 调用)不会在 Facade 目录中查找库
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.5\Facade
因此,解决方案中的网站项目将无法编译。
我从这篇博客文章中发现了这一点。正如那里提到的,为了解决这个问题,我将 DLL 从 Facade 目录复制到 v4.5 目录中,一切正常。
老实说,这是一个不太理想的解决方案。
| 归档时间: |
|
| 查看次数: |
948 次 |
| 最近记录: |