【问题标题】:The type 'MySqlConnection' exists in both 'MySql.Data.CF' and in 'MySql.Data'“MySql.Data.CF”和“MySql.Data”中都存在“MySqlConnection”类型
【发布时间】:2022-01-16 01:07:20
【问题描述】:

我目前正在开发一个 Xamarin IOS 项目。在这个项目中,我需要 MySql 连接才能完成几个任务。

当我编写我的代码(下面的代码)时,程序会抛出一个错误。

        using var connection = new MySqlConnection(connectionString); // C# 8!
        connection.Open();

        using var command = connection.CreateCommand();
        command.CommandText = "SELECT * FROM Users WHERE Username = 'jack'"; 

        using var reader = command.ExecuteReader();

程序抛出以下错误:

“MySqlConnection”类型存在于“MySql.Data.CF, Version=6.9.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, Retargetable=Yes”和“MySql.Data, Version=8.0.25.0, Culture=中立,PublicKeyToken=c5687fc88969c44d' (CS0433) (firstios)

我的数据包文件夹中没有“MySql.Data.CF”,并且它不包含在我正在处理的 .cs 文件夹中。

【问题讨论】:

  • 某处有对 MySql.Data.CF 的引用。尝试在您的 android/ios 项目中展开引用节点。您还可以尝试使用能够将文本搜索到文件中并搜索所有项目/解决方案文件的工具来查找参考。作为最后的手段,将命名空间添加到 MySqlConnection 变量声明(如 MySql.Data.MySqlConnection
  • 如果你右击错误 squiggle VS 会给你几个自动化的解决方案,比如完全限定命名空间。当一个类存在于多个命名空间中时,这是一个非常标准的 C# 错误

标签: c# mysql xamarin.ios


【解决方案1】:

我通过删除 MySql.data 并将其替换为 MySqlConnector 解决了这个问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-21
    • 2019-03-03
    • 2020-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多