EntityFrameworkCode 操做MySql 相關問題

近段時間,因爲工做緣由,使用到了EntityFrameworkCore 操做MySql數據庫,使用中遇到一些問題,特此記錄html

系統環境 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

錯誤詳細

如何解決

經過閱讀 MySql.Data.EntityFrameworkCore 官方文檔 得出結論 多是MySql.Data.EntityFrameworkCore 與 EntityFramework Core 版本不兼容所致。sql

更換 MySql.Data.EntityFrameworkCore或者EntityFramework Core與之相兼容的版本便可。數據庫

這裏我切換的版本爲

Asp.Net Core 2.0 & EntityFrameworkCore 2.0.3 & MySql.Data.EntityFrameworkCore 8.0.12app

具體版本對應參照以下 (官方地址)

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 Guideasp.net

MySql(Entity Framework Core Support)ide

數據庫提供程序(Microsoft Docs)ui

相關文章
相關標籤/搜索