无法加载文件或程序集System.Runtime,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'

时间:2017-08-28 13:21:22

标签: visual-studio asp.net-web-api2 visual-studio-2017 compiler-services

我的VisualStudio 2017 Wep API项目出现此错误:

  

无法加载文件或程序集&System; Run.Runtime,Version = 4.0.0.0,   Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'或其中一个   依赖。定位程序集的清单定义没有   匹配程序集引用。 (HRESULT异常:0x80131040)

堆栈跟踪:

=== Pre-bind state information ===
LOG: DisplayName = System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
 (Fully-specified)
LOG: Appbase = .../WebApp/
LOG: Initial PrivatePath = ...\bin
Calling assembly : System.Runtime.CompilerServices.Unsafe, Version=4.0.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a.
===
LOG: This bind starts in default load context.
LOG: Using application configuration file: ...\web.config
LOG: Using host configuration file: ...\IISExpress\config\aspnet.config
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config.
LOG: Redirect found in application configuration file: 4.0.0.0 redirected to 4.1.1.0.
LOG: Post-policy reference: System.Runtime, Version=4.1.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
LOG: Attempting download of new URL file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files/vs/30ca8c3f/b4b96212/System.Runtime.DLL.
LOG: Attempting download of new URL file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files/vs/30ca8c3f/b4b96212/System.Runtime/System.Runtime.DLL.
LOG: Attempting download of new URL file:///D:/DSTS/WF/WF1_0/WebApp/bin/System.Runtime.DLL.
WRN: Comparing the assembly name resulted in the mismatch: Build Number
ERR: Failed to complete setup of assembly (hr = 0x80131040). Probing terminated.

无法确切地确定它何时出现,但是在更新到Visual Studio(到版本15.3.2)或更新wep Api包之后。

出现了一些其他问题,我已经解决了,但现在我陷入了这个错误。调用程序集是System.Runtime.CompilerServices.Unsafe。 我的第一个猜测是降级这个包和包依赖于这个,我已经做了但没有成功。

我也尝试重新安装解决方案中的所有软件包,检查失败的程序集引用(有几个),检查重复的软件包版本。没运气。

更新: 经过几次颠簸后,System.Runtime现在出现在参考文件夹中,但标记为黄色(缺失)。我只是重新安装了System.Runtime'包,所以或者我的解决方案已损坏或包是一个错误。 目标框架是4.7

1 个答案:

答案 0 :(得分:0)

就我而言,在使用Visual Studio 2017打开解决方案并出现此错误时,要解决此问题,我必须结合以下内容:

1)在 “C:\ Program Files(x86)\ Microsoft Visual Studio \ 2017 \ Enterprise \ Common7 \ IDE \ devenv.exe.config”

发现任何 “.. \ .. \ MSBuild”  并替换它 “C:\ Program Files(x86)\ Microsoft Visual Studio \ 2017 \ Enterprise \ MSBuild”

2)我注意到文件夹中缺少 Microsoft.Build.Framework.dll ,进行了搜索并在 “C:\ Program Files(x86)\ Microsoft Visual Studio \ 2017 \ Enterprise \ MSBuild \ 15.0 \ Bin \ amd64 \” 。 将其复制到 “C:\ Program Files(x86)\ Microsoft Visual Studio \ 2017 \ Enterprise \ Common7 \ IDE”

3)再次,在deven.exe.config中,更改了

codeBase version =“15.1.0.0”href =“C:\ Program Files(x86)\ Microsoft Visual Studio \ 2017 \ Enterprise \ MSBuild \ 15.0 \ Bin \ Microsoft.Build.Framework.dll “

到amd文件夹中找到的版本,在我的情况下: codeBase version =“15.3.409.57025”href =“C:\ Program Files(x86)\ Microsoft Visual Studio \ 2017 \ Enterprise \ MSBuild \ 15.0 \ Bin \ Microsoft.Build.Framework.dll”

我假设这与我安装了VS2017 Enterprise v15.3这一事实有关,或者有什么东西被破坏了或者它是一个错误。

在任何情况下,这都不是永久性修复,但现在它对我来说工作正常,并取消了我的进度。如果我找到新的东西,我会更新。