Search code examples
c#mysql.netentity-frameworkpomelo-entityframeworkcore-mysql

Method not found: 'System.Object Microsoft.EntityFrameworkCore.Infrastructure.IAnnotatable.get_Item(System.String)'


I'm using C# and I want to Add-Migration InitialVersion but have an problem:

Method not found: 'System.Object Microsoft.EntityFrameworkCore.Infrastructure.IAnnotatable.get_Item(System.String)'

Nuget packages which I use:

<Project Sdk="Microsoft.NET.Sdk">

 <PropertyGroup>
   <TargetFramework>net5.0</TargetFramework>
 </PropertyGroup>

 <ItemGroup>
   <PackageReference Include="Microsoft.EntityFrameworkCore" Version="6.0.0-preview.2.21154.2" />
   <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="6.0.0-preview.2.21154.2">
     <PrivateAssets>all</PrivateAssets>
     <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
   </PackageReference>
   <PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="5.0.0-alpha.2" />
 </ItemGroup>

</Project>

Solution

  • Downgrade Microsoft.EntityFrameworkCore and Microsoft.EntityFrameworkCore.Tools to latest 5th version. You can do it via dotnet CLI using next command:

    dotnet add package Microsoft.EntityFrameworkCore --version 5.0.4
    dotnet add package Microsoft.EntityFrameworkCore.Tools --version 5.0.4
    

    Indexer accepting string was removed from IAnnotatable in the 6th preview version.