Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Method 'get_Info' in type 'MySql.Data.EntityFrameworkCore.Infraestructure.MySQLOptionsExtension' from assembly 'MySql.Data.EntityFrameworkCore' does not have an implementation #17788

Closed
khteh opened this issue Sep 12, 2019 · 26 comments

Comments

@khteh
Copy link

khteh commented Sep 12, 2019

I have upgraded the SDK and runtime to 3.0, upgraded the packages in .csproj but bump into the exception:

System.TypeLoadException: Method 'get_Info' in type 'MySql.Data.EntityFrameworkCore.Infraestructure.MySQLOptionsExtension' from assembly 'MySql.Data.EntityFrameworkCore, Version=8.0.17.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d' does not have an implementation.

Notice the spelling error in the namespace, Infraestructure instead of Infrastructure. Could that be the root cause?

Steps to reproduce

$ dn --info
.NET Core SDK (reflecting any global.json):
 Version:   3.0.100
 Commit:    04339c3a26

Runtime Environment:
 OS Name:     ubuntu
 OS Version:  19.04
 OS Platform: Linux
 RID:         ubuntu.19.04-x64
 Base Path:   /usr/share/dotnet-3.0.100/sdk/3.0.100/

Host (useful for support):
  Version: 3.0.0
  Commit:  7d57652f33

.NET Core SDKs installed:
  3.0.100 [/usr/share/dotnet-3.0.100/sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.App 3.0.0 [/usr/share/dotnet-3.0.100/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 3.0.0 [/usr/share/dotnet-3.0.100/shared/Microsoft.NETCore.App]

To install additional .NET Core runtimes or SDKs:
  https://aka.ms/dotnet-download

Further technical details

EF Core version: 3.0
Database provider: (e.g. Microsoft.EntityFrameworkCore.SqlServer) MySql.Data.EntityFrameworkCore
Target framework: .NET Core 3.0
Operating system: Ubuntu 19.04
IDE: Visual Studio Code 1.38.1

@khteh khteh added the type-bug label Sep 12, 2019
@ErikEJ
Copy link
Contributor

ErikEJ commented Sep 12, 2019

The MySql provider must also be updated.

@khteh
Copy link
Author

khteh commented Sep 12, 2019

I am already using the latest 8.0.17 according to https://www.nuget.org/packages/MySql.Data.EntityFrameworkCore/

@ErikEJ
Copy link
Contributor

ErikEJ commented Sep 12, 2019

But it must be updated for EF Core 3.0 due to breaking changes

@khteh
Copy link
Author

khteh commented Sep 12, 2019

What do you mean?

@khteh
Copy link
Author

khteh commented Sep 12, 2019

@smitpatel
Copy link
Contributor

You would need to wait until the package author publishes a version which is compatible with EF Core 3.0. EF Core 3 is major release which contains breaking changes and each database provider need to react to it. Closing as this is external issue. Please contact the author of the package you are trying to use.

@khteh
Copy link
Author

khteh commented Sep 25, 2019

I tried downgrade Microsoft.EntityFrameworkCore to 2.2.6 but the exception persists.

@smitpatel
Copy link
Contributor

Share your csproj file. You need to use versions for 2.2 for all asp.net packages. Just downgrading EFCore package will not get you anything.

@khteh
Copy link
Author

khteh commented Sep 25, 2019

Forget it. Too much unnecessary work. Either wait for donkey years before Oracle works it out or switch to PomeloFoundation/Pomelo.EntityFrameworkCore.MySql#797

@ifew
Copy link

ifew commented Sep 27, 2019

We should downgrade from EFCore 3.0 to 2.2 ??

@smitpatel
Copy link
Contributor

@ifew - You will need to wait for MySQL provider which works with EF Core 3.0. Till that is released, you would need to stick to version 2.2

@hamid-unifi
Copy link

has been reported here as well:
https://bugs.mysql.com/bug.php?id=97000

@j0nimost
Copy link

j0nimost commented Dec 4, 2019

THIS SUCKS!!!!

@roji
Copy link
Member

roji commented Dec 4, 2019

Note that version 3.0 of the Pomelo MySQL provider has already been released, so this problem should no longer occur. If anyone is still running into issues, please open a new issue on the Pomelo repository.

@yuhao-git-star
Copy link

MySql.Data.EntityFrameworkCore release new version 8.0.19, The situation has not changed.

@roji
Copy link
Member

roji commented Jan 15, 2020

@yasuoyuhao and others, just to clarify the current situation... There are two MySQL providers for Entity Framework Core:

  • The official one from MySQL: MySql.Data.EntityFrameworkCore. As of now, the latest version is 8.0.19, and works with Entity Framework Core 2.1 (and probably also 2.2). Since EF Core 3.0 is a major version with breaking changes, you cannot use it with this provider.
  • The Pomelo provider: Pomelo.EntityFrameworkCore.MySql. There is a 3.1 version of this provider.

In other words, if you want to use EF Core 3.0/3.1 with MySQL, at this point you need to use the Pomelo provider (or wait for the official MySQL one to get released).

Note that neither of these are provided by the EF team or tracked by this repo - any bugs or feature requests must be filed directly with its respective project.

@rsmastersoft95
Copy link

rsmastersoft95 commented Jan 21, 2020

try out these steps:

  1. you need to remove all entity framework packages ( ex: EntityFrameworkCore.SqlServer or EntityFramework.Tools ).
  2. Now Reinstall MySql.EntityFramework.Core

remember that Entity framework packages can be conflicts with other Entity framework packages so try one at a time and remove another because somtimes dot.net core provide preinstalled EntityFramework.Core.SqlServer

@scubakiz
Copy link

This is listed as the official package on Microsoft's site:

https://www.nuget.org/packages/Pomelo.EntityFrameworkCore.MySql

@ajcvickers
Copy link
Contributor

@scubakiz Can you point to where this is linked as an "official package"?

@scubakiz
Copy link

This is Microsoft's list of Database Providers for .Net Core:

https://docs.microsoft.com/en-us/ef/core/providers/?tabs=dotnet-core-cli

There are multiple options for MySQL available.

@ajcvickers
Copy link
Contributor

@scubakiz That doesn't indicate in any way that those packages are "official". They are just the packages that people have told us about. Hence:

EF Core providers are built by a variety of sources. Not all providers are maintained as part of the Entity Framework Core Project. When considering a provider, be sure to evaluate quality, licensing, support, etc. to ensure they meet your requirements. Also make sure you review each provider's documentation for detailed version compatibility information.

That being said, the Pomelo MySQL provider seems very good to me. It's just not officially endorsed in any way by Microsoft.

@karan12990
Copy link

Same error.

Method 'get_Info' in type 'MySql.Data.EntityFrameworkCore.Infraestructure.MySQLOptionsExtension' from assembly 'MySql.Data.EntityFrameworkCore, Version=8.0.19.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d' does not have an implementation

Still no updated version for 3.0.

@CarlosLanderas
Copy link

Suffering the same problem

@roji
Copy link
Member

roji commented Apr 15, 2020

For anybody coming to this issue, please read this comment above explaining the situation.

Long story short, the EF Core team is not the maintainer of MySql.Data.EntityFrameworkCore - please communicate with them about releasing a newer version of their provider which supports EF Core 3.1. As an alternative, consider switching to Pomelo.EntityFrameworkCore.MySql which is a full-featured EF Core MySQL provider supporting 3.1 (also not maintained by this team).

Posting further comments here won't help the situation in any way...

@CarlosLanderas
Copy link

Thanks for the information @roji

@sawankumarbundelkhandi
Copy link

sawankumarbundelkhandi commented May 5, 2020

Below is the screenshot from the bug - https://bugs.mysql.com/bug.php?id=96990

image

And MySql.Data 8.0.20 is released on 27 April 2020

https://www.nuget.org/packages/MySql.Data/8.0.20

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests