VS2019中实体框架与MYSQL的连接

val*_*ria 3 mysql entity-framework mysql-connector visual-studio visual-studio-2019

我刚刚安装了 Visual Studio 2019,我正在尝试添加一个带有 ADO.NET 实体模型的数据库,但是向导在这一步崩溃了......

选择实体框架版本

我有 Visual Studio Community 2019 v16.4.5
Installed MySQL for Visual Studio 1.2.9
Installed MySQL connector net 8.0.19

我添加了对我的项目
MySQL.data
MySQL.data.EntityFramework for EF6 MySQL.web 的
引用

所有版本 8.0.19,与连接器相同

我还尝试从 nuget 包中添加
EntityFramework
MySqlData
MySql.Data.Entity
MySql.Web

并将其添加到 web.config

<entityFramework>
<providers>
<provider invariantName="MySql.Data.MySqlClient"
type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" />
</providers>
</entityFramework>
Run Code Online (Sandbox Code Playgroud)

并尝试了我读过的所有内容,但它仍然不起作用,之后它只是崩溃,或者它给了我这个错误

您的项目引用了最新版本的实体框架

有人可以帮忙吗?我要添加旧版本吗?

val*_*ria 5

好的,经过很多天,我终于可以添加我的数据库了。我看到其他人的评论说 ADO 向导崩溃了,所以这就是我所做的......

随着 VS Community 2019 安装最新版本的
MySQL 连接器 net
MySQL for Visual Studio

创建我的项目后,我去管理 NuGet 包并安装了最新版本的实体框架

然后在引用中
为 EF6添加了MySql.Data.EntityFramework

然后将此添加到我的 web.config

<entityFramework>
    <providers>
     <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.EntityFramework" />
    </providers>
  </entityFramework>
Run Code Online (Sandbox Code Playgroud)

重新编译 向导工作得很好!

编写 MySql.Data.EntityFramework 而不是 .EF6 非常重要