首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >无法加载文件或程序集'System.Threading.Tasks.Extensions,Version=4.2.0.0

无法加载文件或程序集'System.Threading.Tasks.Extensions,Version=4.2.0.0
EN

Stack Overflow用户
提问于 2020-02-12 17:53:50
回答 7查看 22K关注 0票数 20

我最近安装了CsvHelper (https://joshclose.github.io/CsvHelper/),当我尝试使用这个库时,我得到了以下错误:

无法加载文件或程序集“System.Threading.Tasks.Extensions、Version=4.2.0.0、Culture=neutral、PublicKeyToken=cc7b13ffcd2ddd51”或其依赖项之一。所定位的程序集的清单定义与程序集引用不匹配。(HRESULT例外: 0x80131040)

在我的app.config中,我有绑定重定向:

代码语言:javascript
运行
复制
 <dependentAssembly>
            <assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
            <bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
        </dependentAssembly>

在我的项目中,我也参考了

\packages\System.Threading.Tasks.Extensions.4.5.3\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll

它的版本是4.2.0.1,我不知道为什么它仍然试图加载4.2.0.0的库。

我的项目正在运行.net 4.7.2

EN

回答 7

Stack Overflow用户

发布于 2020-05-08 22:19:23

我今天在一个多项目解决方案中遇到了同样的问题,System.Threading.Tasks.Extensions是通过嵌入Autofac包来安装的。在两个项目中删除并重新安装Autofac (通过nuget)之后,两个packages.config包含相同的条目

代码语言:javascript
运行
复制
<package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net472" />

但是,当一个项目引用正确的dll时,

代码语言:javascript
运行
复制
packages\System.Threading.Tasks.Extensions.4.5.4\lib

另一个引用了

代码语言:javascript
运行
复制
packages\System.Threading.Tasks.Extensions.4.5.2\lib

在手动从引用(不是通过nuget)删除旧的dll并嵌入正确的dll之后,一切都再次正常工作。我不明白为什么正确的packages.config条目没有强制执行正确的引用。

编辑:

如果它在开发机器上工作,但在部署到的机器上不起作用,那么不要忘记在web.config / app.config中部署绑定重定向。就我而言,它们看起来是这样的:

代码语言:javascript
运行
复制
<dependentAssembly>
  <assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
  <bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
</dependentAssembly>
票数 16
EN

Stack Overflow用户

发布于 2021-10-08 11:38:59

在升级.net版本时,我在一个多项目解决方案中遇到了这个问题。在我的例子中,在Package控制台中运行Update-Package -reinstall命令解决了这个问题。

票数 7
EN

Stack Overflow用户

发布于 2020-03-06 22:23:03

根据https://github.com/JoshClose/CsvHelper/issues/1462的说法,这似乎是CSVHelper 15.0.0 依赖关系中的一个bug。15.0.0版本(不确定以前的版本)引入了其他程序集,从而导致了问题。

就我个人而言,我通过降级到13.0 (一条评论也指出12.3.2有效)来解决这个问题,但是这个bug报告现在说他们已经发布了15.0.1专门来解决这个问题。我自己还没确认。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60194368

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档