You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows 10 UWP应用集成MySQL遇阻:无法引用指定DLL求解

在Windows 10 UWP应用中使用MySQL的正确姿势

我之前也踩过这个坑,UWP和MySQL的适配确实容易走弯路,你遇到的问题主要是因为旧的Connector/NET版本已经不再适配现代UWP环境,而且手动引用DLL的方式本身就不适合.NET Core/UWP项目。下面给你一步步解决的方案:

为什么找不到MySql.Data.RT.dll?

MySQL Connector/NET的较新版本(大概从8.0系列开始)已经移除了专门针对UWP的RT版本DLL,官网现在提供的包都是基于.NET Standard的,不再单独分RT目录。旧版本可能还有,但不仅难找,而且缺乏安全更新,完全不推荐使用。

正确的解决方案:使用NuGet安装适配的驱动

UWP项目基于.NET Core/.NET Standard,必须使用支持该框架的MySQL驱动,手动引用.NET Framework的DLL肯定会报你遇到的兼容性错误。推荐两种靠谱的选择:

选项1:使用社区维护的MySqlConnector包(更推荐)

这个包对.NET Core/UWP的支持非常友好,更新频繁,兼容性更好:

  • 右键你的UWP项目 → 选择「管理NuGet程序包」
  • 在「浏览」标签搜索MySqlConnector,安装最新稳定版本
  • 安装完成后,在代码中引用命名空间:using MySqlConnector;
  • 测试连接的示例代码:
private async Task TestMySqlConnection()
{
    var connectionString = "server=你的MySQL服务器地址;database=目标数据库;user=用户名;password=密码;";
    using (var connection = new MySqlConnection(connectionString))
    {
        try
        {
            await connection.OpenAsync();
            // 连接成功,这里可以执行查询、插入等操作
            Debug.WriteLine("MySQL连接成功!");
        }
        catch (Exception ex)
        {
            Debug.WriteLine($"连接失败:{ex.Message}");
        }
    }
}

选项2:使用Oracle官方的MySql.Data包

如果你更倾向于官方驱动,确保安装支持.NET Standard的版本:

  • 同样在NuGet包管理器中搜索MySql.Data,选择版本8.0及以上(支持.NET Standard 2.0)
  • 代码中引用命名空间:using MySql.Data.MySqlClient;
  • 连接代码和上面类似,只是把MySqlConnection换成MySql.Data.MySqlClient.MySqlConnection即可

关键注意事项

  • 网络权限配置:在你的UWP项目的Package.appxmanifest文件中,必须勾选「Internet (Client)」权限(如果需要访问远程服务器),否则应用会被禁止联网。
  • 卸载旧引用:先把之前手动添加的所有MySQL相关DLL引用删除,避免版本冲突。

总结

完全可以在UWP应用中使用MySQL,只是不能再用旧的手动引用RT DLL的方式了,通过NuGet安装适配.NET Standard的驱动才是现代UWP项目的正确做法。

内容的提问来源于stack exchange,提问作者Gary Hengeveld

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 07:38:05