如何将 MySQL 与 .NET Core 3 和 Entity Framework 6 集成

Posted

技术标签:

【中文标题】如何将 MySQL 与 .NET Core 3 和 Entity Framework 6 集成【英文标题】:How to integrate MySQL with .NET Core 3 and Entity Framework 6 【发布时间】:2020-02-12 01:13:23 【问题描述】:

我有一个完整的数据库项目.NET FrameworkEntity framework 6.3mysql.Data.MySqlClient 作为提供者(包MySql.DataMySql.Data.EntityFramework bot 8.0.18)。这一切都按预期工作。

现在我想将它移植到.NET Core 3.0。我仍然需要继续使用Entity framework 6.3 并使用旧的EDMX model。我已经创建了新的核心项目并链接了数据库实体和edmx (port existing EF 6.3 to core )。我遇到的问题是提供者MySql.Data.MySqlClientMySql.Data.EntityFramework NuGet 包)似乎没有包含.NET Core 版本。

我是否缺少 NuGet 包?我是否需要另一个适用于 .NET Core 3.0Entity Framework 6.3 的 MySql 提供程序?

【问题讨论】:

【参考方案1】:

同时,Oracle 将他们的代码移植到 .NET Core 3.0,我们发布了支持它的包:

包裹:https://www.nuget.org/packages/Z.MySql.Data.Entity/ GitHub:https://github.com/zzzprojects/mysql-connector-net

【讨论】:

现在支持 EF Core 3.x 了吗? 没有 Mukus,它似乎不支持它,所以你可以继续使用我们的包。【参考方案2】:

在继续之前,您需要 MySql.Data.EntityFramework 将其提供程序移植到支持 .NET Core 3.0(可能还有 EF 6.3)。

【讨论】:

以上是关于如何将 MySQL 与 .NET Core 3 和 Entity Framework 6 集成的主要内容,如果未能解决你的问题,请参考以下文章

将 Visual Studio 2017 与 .Net Core SDK 3.0 一起使用

无法将类型“System.String”的对象转换为类型“System.Byte []”错误 MYSQL NET CORE 3.1

如何将 Windows 身份验证和 JWT 与 .Net Core 2.1 结合使用

如何将 .net core Web API 项目添加到现有的 .NET core (3.1) Web Application 项目中?

如何在 .NET Core 3.0 SDK 上构建多目标 .NET 5 和 .NET Core 3.1

将 OpenID Connect 与 .NET Core 3.0 ASP.NET Core API 服务一起使用时出错