【问题标题】:MySQLConnector DLL Error System.Threading.Tasks.Extensions linkingMySQLConnector DLL 错误 System.Threading.Tasks.Extensions 链接
【发布时间】:2021-07-21 05:27:29
【问题描述】:

我尝试将我的应用程序(C#、Desktop-WPF、.NET Framework 4.8)发布到测试系统,我的问题是:

如果我使用 nuget 包 mysqlconnector (1.3.7) 而没有(!)升级自动安装的 System.Buffers/Memory/Numerics/Threading ... 包并且我尝试连接到服务器,我收到以下错误我的开发系统:

Die Datei oder Assembly "System.Threading.Tasks.Extensions, 版本=4.2.0.1,文化=中性,PublicKeyToken=cc7b13ffcd2ddd51" oder eine Abhängigkeit davon wurde nicht gefunden。死神 Manifestdefinition der Assembly stimmt nicht mit dem Assemblyverweis überein。 (Ausnahme von HRESULT: 0x80131040)

但是如果我在我的测试系统上运行应用程序,它就可以工作。

当我升级其他 nuget 包时,它将在我的开发系统上运行,但在测试系统上不再运行(删除所有旧文件),现在在我的测试系统上,如果我尝试连接,则会出现以下消息:

Die Datei oder Assembly "System.Threading.Tasks.Extensions, 版本=4.1.0.0,文化=中性,PublicKeyToken=cc7b13ffcd2ddd51" oder eine Abhängigkeit davon wurde nicht gefunden。死神 Manifestdefinition der Assembly stimmt nicht mit dem Assemblyverweis überein。 (Ausnahme von HRESULT: 0x80131040)

一个非常简单的解决方法是用我的测试系统上的旧 DLL 文件替换新的 DLL 文件,但这不是解决方案,我删除并重新安装了 nugetpackages 但它总是一样的,我认为某处必须是一个条目链接到错误的文件/版本

csproj 文件中的原始行(我尝试了不同的数字但没有任何帮助):

<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
      <HintPath>packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath>
    </Reference>

【问题讨论】:

    标签: c# .net-assembly mysql-connector


    【解决方案1】:

    好的,我找到了解决方案:

    1. 卸载 mysqlconnector nuget 和自动安装包

    2. 打开 App.config 并删除:

      <dependentAssembly>
               <assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
               <bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
             </dependentAssembly>
             <dependentAssembly>
               <assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
               <bindingRedirect oldVersion="0.0.0.0-4.0.1.1" newVersion="4.0.1.1" />
             </dependentAssembly>
             <dependentAssembly>
               <assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
               <bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
             </dependentAssembly>
             <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>
             <dependentAssembly>
               <assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
               <bindingRedirect oldVersion="0.0.0.0-4.1.4.0" newVersion="4.1.4.0" />
             </dependentAssembly>
      
    3. 在没有更新自动安装包的情况下重新安装了 mysqlconnector,现在它可以在 dev 和 testsystem 上运行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-06
      • 2013-08-20
      • 2011-11-16
      • 2015-10-07
      • 1970-01-01
      • 2012-01-15
      相关资源
      最近更新 更多