c# – 连接到MySQL DB的Windows Azure中的InvalidCastException

我刚刚开始使用Azure,我在访问我设置的 MySQL数据库时遇到问题.看起来Azure似乎引用了MysqL.Data.dll版本6.5.4而不是我需要的版本MysqL.Data.dll v6.8.3.我收到以下错误

MySql.Data.MySqlClient.MysqLConnection cannot be cast to
MysqL.Data.MysqLClient.MysqLConnection. Type A originates from
MysqL.Data,Version=6.5.4.0,Culture=neutral,
PublicKeyToken=c5687fc88969c44d’ in the context ‘Default’ at location
‘D:\Windows\Microsoft.Net\assembly\GAC_MSIL\MysqL.Data\v4.0_6.5.4.0__c5687fc88969c44d\MysqL.Data.dll’.
Type B originates from ‘MysqL.Data,Version=6.8.3.0,
PublicKeyToken=c5687fc88969c44d’ in the context ‘Default’ at location
‘C:\DWASFiles\Sites\test\Temporary ASP.NET
Files\root\fc8f3c27\4f9201b0\assembly\dl3\ca8ec5e2\74482a5e_285fcf01\MysqL.Data.dll’.

我尝试在v6.5.4中使用我的应用程序,但我需要v6.8.3才能工作.许多搜索都没有透露解决方案.有没有人有任何想法?使用Web Matrix检查bin目录中的版本是否为6.8.3.我怎样才能引用这个正确的dll?

解决方法

我有同样的问题.
问题是在服务器上安装了较低版本的MysqL库.

您可以绕过此修改web.config文件

<system.data>
  <DbProviderFactories>
    <remove invariant="MysqL.Data.MysqLClient" />
    <add name="MysqL Data Provider" invariant="MysqL.Data.MysqLClient" description=".Net Framework Data Provider for MysqL" type="MysqL.Data.MysqLClient.MysqLClientFactory,MysqL.Data,PublicKeyToken=c5687fc88969c44d" />
  </DbProviderFactories>
</system.data>

相关文章

目录简介使用JS互操作使用ClipLazor库创建项目使用方法简单测...
目录简介快速入门安装 NuGet 包实体类User数据库类DbFactory...
本文实现一个简单的配置类,原理比较简单,适用于一些小型项...
C#中Description特性主要用于枚举和属性,方法比较简单,记录...
[TOC] # 原理简介 本文参考[C#/WPF/WinForm/程序实现软件开机...
目录简介获取 HTML 文档解析 HTML 文档测试补充:使用 CSS 选...