Pas une réponse directe mais une solution de contournement à ce bogue, créez une application de console core 2.x, le contenu du fichier de projet ci-dessous (ne fonctionnera pas avec le core 3 pour le moment) :
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp2.2</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="2.2.6">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="2.2.6" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="2.2.6">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
<PackageReference Include="MySql.Data.EntityFrameworkCore" Version="8.0.17" />
</ItemGroup>
</Project>
Microsoft.EntityFrameworkCore.SqlServer
est d'échafauder les chaînes Microsoft SQL Server, MySql.Data.EntityFrameworkCore
est d'échafauder les chaînes de connexion MySql Server, puis dans la console du gestionnaire de packages (dans Visual Studio, testé en 2017 et 2019), tapez :
Scaffold-DbContext "server=localhost;port=3306;user=USERNAME;password=YOUR_PASSWORD;database=DATABASE_NAME" MySql.Data.EntityFrameworkCore -OutputDir Models -f
c'était sous MySql. Pour le type MSSQL :
Scaffold-DbContext "Server=SERVER_ADDRESS;Database=DATABASE_NAME;user=USERNAME; password=YOUR_PASSWORD;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -f
cela générera le modèle de contexte et les classes contenantes afin que vous puissiez enfin utiliser la base de données en premier dans votre application principale (oui, il est temps de passer au noyau).