Visual Studio2017中如何让Entity Framework工具【ADO.NET实体数据模型】支持MYSQL数据源

熟悉Entity Framework应该对以下图片不陌生,他就是ADO.NET实体数据模型向导:可以将数据库的表自动生成模型类,或者创建Code First的模型文件。

但是这个模型向导默认只显示微软自己的SQL Server数据源,如果想使用Mysql数据源,得做一些配置。

自己得解决方案如下:

1,导入Entity Framework 6.1.3。

  • 这个是出现ADO.NET实体数据模型选项的前提。如果没有Entity Framework包,新建项菜单中没有ADO.NET实体数据模型选项。
  • 6.1.3的版本很重要,不然转换模型时可能会出错误:System.Data.StrongTypingException: The value for column ‘IsPrimaryKey‘ in table ‘TableDetails‘ is DBNull . ---> System.InvalidCastException: Specified cast is not valid.

2,安装Mysql connector/net 6.9.9 和Mysql for visual studio 1.2.7.

Mysql for visual studio 1.2.7是2017年4月10日Release的,支持Visual studio 2017编辑器。

一定记得安装Entity Framework Support:

一定记得安装Entity Framework Support for Vs 2017:

3,重新启动Visual studio2017,再次添加ADO.NET实体数据模型。

总算是出现了MySQL Database选项。

4,添加最新版本MySql.Web.6.9.9、MySql.Data.6.9.9 、MySql.Data.Enity.6.9.9包。

如果不添加如上Nuget包,将出现如下错误:

5,连接Mysql数据库,选择对应的表与视图等信息创建对象类。

总结

简单几步可以解决不少问题,如果不知道那就耽误不少时间。

时间: 2024-07-30 10:12:43

Visual Studio2017中如何让Entity Framework工具【ADO.NET实体数据模型】支持MYSQL数据源的相关文章

ADO.NET实体数据模型中关于数据库字段默认值的处理

无论是Visual Studio 2010或者2013内置的ADO.NET实体数据模型都有一个小问题:数据库中有些字段已设置了默认值,但ADO.NET实体数据模型工具并不会自动进行设置. 这时需要手工进行设置. 假设我们的SQL Server数据库中RegisterDate字段已设置了默认值getdate().用ADO.NET实体数据模型产生了edmx文件后,打开edmx文件,鼠标右击RegisterDate,选择属性菜单,在属性面板中修改StroreGeneratedPattern属性的值为C

Entity Framework 6 自定义连接字符串ConnectionString连接MySQL

在开始介绍之前,首先来看看官方对Entity Framework的解释:Entity Framework (EF) is an object-relational mapper that enables .NET developers to work with relational data using domain-specific objects. It eliminates the need for most of the data-access code that developers

Visual Studio 2010缺失ADO.NET 实体数据模型解决方法

解决方法如下:1).到 Visual Studio 2010 的安装包的目录:/WCU/EFTools 中寻找如下文件 ADONETEntityFrameworkTools_chs.msi;ADONETEntityFrameworkTools_chs.cab,将它 们复制自己计算机的某一目录下,例如:X:/EF2).在这个目录下创建文本文件Log.txt(下面命令里要使用到)3).运 行:Visual Studio 命令提示(2010)工具, 访问位置:开始菜单=>Microsoft Visua

Entity Framework工具POCO Code First Generator的使用

在使用Entity Framework过程中,有时需要借助工具生成Code First的代码,而Entity Framework Reverse POCO Code First Generator是一款不错的工具 在Visual Studio中,通过"工具"→"扩展和更新..."来安装Entity Framework Reverse POCO Code First Generator 这里添加一个控制台项目,并在项目中添加POCO Code First Genera

Entity Framework工具POCO Code First Generator的使用(参考链接:https://github.com/sjh37/EntityFramework-Reverse-POCO-Code-First-Generator)

在使用Entity Framework过程中,有时需要借助工具生成Code First的代码,而Entity Framework Reverse POCO Code First Generator是一款不错的工具 在Visual Studio中,通过"工具"→"扩展和更新..."来安装Entity Framework Reverse POCO Code First Generator 这里添加一个控制台项目,并在项目中添加POCO Code First Genera

Entity Framework Code First ---EF Power Tool 和MySql一起使用遇到的问题

关于如何使用EF Power Tool的介绍请看 http://www.cnblogs.com/LingzhiSun/archive/2011/05/24/EFPowerTool_1.html, 这里不再啰嗦. MySql里有个默认的范例数据库 world, 里面有三个表, 下载Entity Framework Power Tools 安装包, 现在已经是Beta3版本,http://visualstudiogallery.msdn.microsoft.com/72a60b14-1581-4b9

Entity Framework 第三篇 实体特性声明

Entity Framework中对实体的特性声明有着严格的要求 1.实体必须要有主键特性,但是如果实体没有主键特性那怎么办? public int ExecuteSqlCommand(string sql, params SqlParameter[] paras) { if (this.IsTransaction) { if (dbContext.Database.CurrentTransaction == null) { dbContext.Database.BeginTransaction

Entity Framework 6.0 对枚举的支持/实体添加后会有主键反回

实验 直接上代码,看结果 实体类 [Flags] public enum FlagsEnum { Day = 1, Night = 2 } public class EntityWithEnum { public int ID { get; set; } public FlagsEnum ValidTime { get; set; } } 数据库上下文 public partial class CodeFirstModel : DbContext { public CodeFirstModel(

Ado.Net实体数据模型EF,如何在代码中添加数据库连接密码

在创建EF模型的时候,VS2013提示说“在连接字符串中存储敏感数据可能有安全风险”,于是我选择了在代码中添加,可是如何通过代码添加呢? 我在网上百度了下,没有人说的清楚直观. 假设我们创建了一个名字是“mytest”的实体数据模型,那么在项目中就会生成一个mytest.emdx,我们展开它mytest.emdx -> mytest.Context.tt -> mytest.Context.cs 在这个cs文件中我们能够看到一个构造函数,假设你的数据库名称是mydb,它的类名就是mydbEnt