Microsoft.Bcl.Async尝试加载System.Threading.Tasks 1.5.11.0

时间:2017-03-23 13:29:54

标签: c# .net .net-4.0 async-await

我已将Microsoft.Bcl.Build/Microsoft.Bcl和Microsoft.Bcl.Async添加到我想要使用async / await的解决方案中的某些项目中。 在安装了.Net4.5的机器上一切正常。但是,当我在仅安装了.Net4的计算机上启动应用程序时,应用程序崩溃时会出现以下异常:

  

无法加载文件或程序集“System.Threading.Tasks,Version = 1.5.11.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'或其中一个依赖项。定位的程序集的清单定义与程序集引用不匹配。 (HRESULT异常:0x80131040)

查看StackTrace,异常似乎是在我们引用的第三方库中生成的。

当我分析Microsoft.Bcl.Async提供的Microsoft.Threading.Tasks.dll时,我看到它确实引用了System.Threading.Tasks版本1.5.11.0,但版本2.6.10.0包含在Microsoft.Bcl中。

我做错了吗?

1 个答案:

答案 0 :(得分:3)

我找到了解决方案!实际上非常简单。我只需将nuget在app.config文件中添加的绑定重定向复制并粘贴到* .exe.config文件中。然后它神奇地起作用。轻松修复。