近期由于工作需要,需要重新修改设计系统的ADO.NET实体数据模型.edmx文件中间,在完成实际中途遇到一些实际使用问题,特此记录。

1. Visual Studio 2017 无法以实体设计模式打开MySQL&MaraiDB 相关.edmx 文件,出现如下错误:

  

  如何解决: 

     1.确保已安装 Entity Framework 6工具

       如已安装,则直接跳过1步骤,如未安装,则通过 工具-->获取工具和功能(修改Visual Studio)-->单个组件,勾选Entity Framework 6 工具,安装即可。

     2. 安装相应版本 Connector/Net 和 MySQL for Visual Studio 即可

   

找到Visual Studio 2017 对应支持版本即可,这里我选择的 mysql-for-visualstudio-1.2.7.msi & Connector/Net 6.9.11 安装完毕之后重启VisualStudio之后即可以设计模式打开MariaDB&MySQL对应的.edmx 文件

  PS:

  1. 安装是注意对照表中的版本进行安装

  2. 如果找不到对应版本,可以尝试点击查看历史版本,然后下载对应版本进行安装

3.安装时注意选择勾选:

Connector/Net: 勾选 Enity Framework Support

mysql-for-visualstudio 勾选: Visual Studio Integration 和 指定Visual Studio版本的 Entity Framework Designer Intgration

如图示:

  

如不清楚如何处理,请选择完整安装即可。

2. Visual Studio 2017 但是无法进行根据MySQL or MariaDB 数据库进行更新实体模型等操作

   错误如下:找不到与之兼容的实体框架数据库提供程序
 
 
 
 如何解决:
  使用Nuget添加对应的Entity Framework, MySql.Web,MySql.Data,MySql.Data.Entity包即可。
  我这里添加的版本为:Entity Framework 6.1.3,MySql.Web 6.9.11,MySql.Data 6.9.11,MySql.Data.Entity 6.9.11 
  添加完毕后,重新生成项目即可进行:从数据库更新实体等操作,如图:以可进行实体更新等操作
 
  
PS:
   1. 这里的这里的Nuget包版本一定要与之对应,否则也可能会造成无法识别提供程序等错误
   2. 安装Nuget包时,最好手动将原来的错误的依赖删除后,重新使用Nuget进行添加,并重新生成项目。
 
这里在使用EntityFramework 6.1.0 及以上包 + MySql.6.9.9 系列包时,将出现无法识别提供程序等错误,使用MySql 6.9.11 系列包时正常使用,无错误发生。

  

 

Visual Studio2017中如何让ADO.NET实体数据模型[EntityFramework]支持MariaDB&MySQL数据源的更多相关文章

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

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

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

    无论是Visual Studio 2010或者2013内置的ADO.NET实体数据模型都有一个小问题:数据库中有些字段已设置了默认值,但ADO.NET实体数据模型工具并不会自动进行设置. 这时需要手工 ...

  3. 【转载】Visual Studio2017中如何设置解决方案中的某个项目为启动项目

    在C#的应用程序开发过程中,一个完成的解决方案可能包含多个子项目,有时候需要设置某一个子项目为启动项目,在Visual Studio 2017集成开发工具中,设置解决方案中的某个项目为启动项目的操作方 ...

  4. Visual 2015创建新项,缺少ADO.NET 实体数据模型的解决方法

    现在的某度查资料真的很麻烦,突然我自身的VS2015创建EF的时候找不到 ADO.NET 实体数据模型,但是使用CodeFrist是可以生成数据表的.所有特别郁闷. 打开界面如下 某度半天,都没有查出 ...

  5. Model First:创建实体数据模型(ADO.NET 实体数据模型)

    Microsoft Entity Framework是一个对象关系映射工具(Object Relational Mapping ,O/RM)工具.它可以让你从一个数据库自动地生成数据接入层.实体框架免 ...

  6. vs212创建mvc3项目,添加ADO.NET实体数据模型时产生 XXXX.Desiger.cs 文件为空

    vs212创建mvc3项目,发现添加ADO.NET实体数据模型时,产生StoreDB.Desiger.cs文件为空 产生StoreDB.Desiger.cs文件为空 原因是,在vs2012中,添加AD ...

  7. 《MVC+EF》——用DBFirst创建ADO.NET实体数据模型和对象关系映射

    转载于:http://blog.csdn.net/zhoukun1008/article/details/50528145 现在越来越喜欢MVC了,不光是因为ITOO中用到了他,而是因为它里面包含了很 ...

  8. ADO.NET实体数据模型

    本文说一下如何使用ADO.NET实体数据模型,并解释一些概念. 1,首先你要建立一个数据库.比如我在SQL2005上面建立了数据库student,包含两个表: 2,然后再项目上添加新建项: 3,打开新 ...

  9. ADO.NET实体数据模型使用探索1

    今天研究了下ADO.NET实体数据模型,想写个关于两张有外键关系的增改删查,以此来稍增加点难度. 编程环境:vs2010+sql2005 1.在SQL2005下建立三张表:学生信息表Student(S ...

随机推荐

  1. mybatis mybatis.xml 文件和properties文件结合来进行配置数据源

  2. django使用ajax传输数据

    HTML文件ajax get例子 <!DOCTYPE html> <html lang="en"> <head> <meta charse ...

  3. 自己动手设计并实现一个linux嵌入式UI框架

    一直以来都是使用现成的UI框架,如微软的window.QT等,因为它有各种控件(如button.window.edit等)都已经封装实现好了.我们只要拿来用就是了,也一直认为它很神圣,没有深入了解它背 ...

  4. MySQL数据库(四)

    操作数据库表的内容: -- 向表中插入数据:insert into table_name values(now(),'a'); insert into student (id,name,sex) va ...

  5. windows测试登陆

    测试工具我使用2种(Medusa和hydra): 第一种:Medusa支持端口登录但是不支持rdp协议,意思就是可以验证密码是否正确,新用户不会创建家目录: 使用方法: medusa -M smbnt ...

  6. 在一个项目里,公共一个css、各个页面分别对应不同的css?

    是部分公用才对.比如所有页面的头部脚部一般是一样的,就放在一个公用css里如common.css,每个页面都要链接这个css.不一样的部分单独写一个,如主页就做一个index.,css,列表页就写一个 ...

  7. jquery源码解析:each,makeArray,merge,grep,map详解

    jQuery的工具方法,其实就是静态方法,源码里面就是通过extend方法,把这些工具方法添加给jQuery构造函数的. jQuery.extend({ ...... each: function( ...

  8. LINQ -2015-04-27

    LINQ--language-integrated-query 1.它和sql语言区别呢? SQL语言常用在ralational-database中,而LINQ对内存数据,数据库,xml文件等多种形式 ...

  9. Mac下显示和隐藏“隐藏文件”

    命令行方式:显示/隐藏Mac隐藏文件命令如下(注意其中的空格并且区分大小写): 显示Mac隐藏文件的命令: defaults write com.apple.finder AppleShowAllFi ...

  10. 一个网站同一域名不同目录下的文件访问到的cookie值不同是什么原因?

    一个网站(e:\test):里面包含多个目录如: html css js php img ..... 等等.然后,我在js目录里面的js文件中设置了cookie:同样也在php目录中的php文件中设置 ...