EntityFrameworkCode 操作MySql 相关问题
近段时间,由于工作原因,使用到了EntityFrameworkCore 操作MySql数据库,使用中遇到一些问题,特此记录
系统环境 Win10 1805,VS 2017,Framework:Asp.NetCore 2.0
1. InvalidCastException: Unable to cast object of type 'ConcreteTypeMapping' to type 'Microsoft.EntityFrameworkCore.Storage.RelationalTypeMapping'.
项目依赖相关信息
Asp.NetCore2.0 , EntityFrameworkCore 2.1.0~2.1.3 稳定版 , MySql.Data.EntityFrameworkCore 6.10.7~8.0.12 稳定版
错误详细

如何解决
通过阅读 MySql.Data.EntityFrameworkCore 官方文档 得出结论 可能是MySql.Data.EntityFrameworkCore 与 EntityFramework Core 版本不兼容所致。
更换 MySql.Data.EntityFrameworkCore或者EntityFramework Core与之相兼容的版本即可。
这里我切换的版本为
Asp.Net Core 2.0 & EntityFrameworkCore 2.0.3 & MySql.Data.EntityFrameworkCore 8.0.12
具体版本对应参照如下 (官方地址)
MySql.Data.EntityFrameworkCore Supported versions of Entity Framework Core
| Connector/NET | EF Core 1.1 | EF Core 2.0 | EF Core 2.1 |
|---|---|---|---|
| 6.10.4 | .NET Standard 1.3 or .NET Framework 4.5.2 (and later) | Not supported | Not supported |
| 6.10.5 to 6.10.7 | .NET Standard 1.3 or .NET Framework 4.5.2 (and later) | .NET Standard 2.0 only (.NET Framework is not supported) Scaffolding is not supported |
Not supported |
| 6.10.8 | .NET Standard 1.3 or .NET Framework 4.5.2 | .NET Standard 2.0 or .NET Framework 4.6.1 (and later) | Not supported |
| 8.0.11 to 8.0.12 | .NET Standard 1.6 or .NET Framework 4.5.2 (and later) | .NET Standard 2.0 only (.NET Framework is not supported) Scaffolding is not supported |
Not supported |
参考文章
MySQL Connector/NET Developer Guide
MySql(Entity Framework Core Support)
EntityFrameworkCode 操作MySql 相关问题的更多相关文章
- python操作mysql数据库的相关操作实例
python操作mysql数据库的相关操作实例 # -*- coding: utf-8 -*- #python operate mysql database import MySQLdb #数据库名称 ...
- 常用SQL操作(MySQL或PostgreSQL)与相关数据库概念
本文对常用数据库操作及相关基本概念进行总结:MySQL和PostgreSQL对SQL的支持有所不同,大部分SQL操作还是一样的. 选择要用的数据库(MySQL):use database_name; ...
- Linux下mysql相关操作
Linux下mysql相关操作 1.创建MySQL mysql -u root -p create user 'username'@'%' identified by 'password'; %可以选 ...
- [php入门] 3、WAMP中的集成MySQL相关基础操作
前言:本文以小白视角了解WAMP集成开发环境中的MYSQL,涉及的面广而浅,算是导读性质. 1.启动运行熟悉WAMP中的MySQL 先有库.再有表.数据最终以记录的形式插入表中.其中对数据进行操作使用 ...
- PHP 与 MySQL 相关操作
一.MySQL基操 •MySQL启动 注意:MySQL不能直接通过 mysql.exe 命令启动 MySQL客户端访问服务端需要寻找匹配:连接认证 连接:IP和端口确定,如果是本地都可以忽略 -h 主 ...
- 【菜鸟玩Linux开发】在C++里操作MySQL
MySQL是一个的开源关系型数据库,对于服务端开发来说是一个优秀的选择.本篇内容将介绍如何在C++程序里操作MySQL数据库. ———————————————————————————————————— ...
- 转 用C API 操作MySQL数据库
用C API 操作MySQL数据库 参考MYSQL的帮助文档整理 这里归纳了C API可使用的函数,并在下一节详细介绍了它们.请参见25.2.3节,“C API函数描述”. 函数 描述 mysql_a ...
- PHP操作mysql数据库:[2]查询数据听语音
本文主要详细讲解如何使用php语言,对mysql数据库进行查询.添加.删除.更新等操作. 工具/原料 Macromedia Dreamweaver 8 mysql数据库,php语言 一.前言 ...
- CentOS7下安装Mysql和Memcached 以及 使用C#操作Mysql和Memcached
我本身是学.net的,但是现在很多主流SQL和NOSQL都是部置在linux下,本着好学的精神,前段时间装了个虚拟机,在其装上CentOS64位的服务器系统,对于英文0基础,linux0基础的我来说, ...
随机推荐
- Tempdb--Row version
Trigger:在SQL SERVER 2005之前,触发器需要使用日志来获取DELETED AND INSERTED的数据,因此会打乱日志顺序写的模式,造成磁盘压力,在SQL Server2005 ...
- .NET中异常与错误码优劣势对比
.NET之所以选择异常,而不是返回错误码来报告异常,是由于前者有以下几个优势: 1.异常与oop语言的结合性更好.oop语言经常需要对成员签名强加限制,比如c#中的构造函数.操作符重载和属性,开发者对 ...
- 跨域处理之Jsonp
一.认识Jsonp JSONP是一个非官方的协议,它允许在服务器端集成Script tags返回至客户端,通过javascript callback的形式实现跨域访问(这仅仅是JSONP简单的实现形式 ...
- MySQL大数据量的导入
最近在公司备份数据库数据,简单的看了一下.当然我用的是简单的手动备份. 第一:其实最好的方法是直接用: mysqldump -u用户名 -p密码 数据库名 < 数据库名.sql 在linux在操 ...
- javaweb从mysql中获取数据验证用户名密码成功跳转,失败重新验证
要求:validate.jsp页面中获取请求参数(request.getparameter(“name属性的值”)),注意中文参数获取之前要设置请求编码(request.setCharaterEnco ...
- git log 与 git reflog 的 区别
git log: commit 的版本日志 包含提交的版本 操作者 日期 (方便查看commit的版本,但是版本回退后,使用git log 看不到回退版本号之后的版本记录) commit ce0d69 ...
- [CSS3] 3D桃心
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- javascript获取wx.config内部字段解决微信分享
转自:http://www.jb51.net/article/80679.htm 专题推荐:js微信开发_脚本之家 http://www.jb51.net/Special/879.htm 背景在微信分 ...
- js及Java中对于两个时间日期的判断脚本
JS脚本: function checkDateIsEdited(createDate) { var compareDate = createDate.replace("-",&q ...
- 1. C++11保证稳定性与兼容性
1.1 __func__预定义标识符 在c99中,__func__基本功能是返回所在函数的名字,c++11中允许使用在类或结构体中. #include <iostream> using n ...