Конфликт версий для Microsoft.EntityFrameworkCore.Relational при обновлении до ASP.NET Core 5.0

После переноса моего проекта с ASP.NET Core 3.1 на 5.0 я столкнулся с этой проблемой:

Ошибка NU1107 Обнаружен конфликт версий для Microsoft.EntityFrameworkCore.Relational.

Установите Microsoft.EntityFrameworkCore.Relational 5.0.0 непосредственно в проект Alpha.Web.App, чтобы решить эту проблему.

Alpha.Web.App - ›Microsoft.EntityFrameworkCore.Tools 5.0.0 -› Microsoft.EntityFrameworkCore.Design 5.0.0 - ›Microsoft.EntityFrameworkCore.Relational (› = 5.0.0)

Alpha.Web.App - ›Pomelo.EntityFrameworkCore.MySql 3.2.4 -› Microsoft.EntityFrameworkCore.Relational (›= 3.1.8 &&‹ 5.0.0).

E: \ Projects \ Alpha \ Alpha.Web.App \ Alpha.Web.App.csproj 1

Как я могу это решить?

Alpha.Web.App.csproj:

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

  <PropertyGroup>
    <TargetFramework>net5.0</TargetFramework>
    <UserSecretsId>XXXXXXuser secret idXXXXXXXX</UserSecretsId>
  </PropertyGroup>

  <ItemGroup>
          <!-- ...-->
  </ItemGroup>

  <ItemGroup>
          <!-- ...-->
  </ItemGroup>

  <ItemGroup>
          <!-- ...-->
  </ItemGroup>

  <ItemGroup>
    <None Remove="migrations.sql" />
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="HtmlAgilityPack" Version="1.11.28" />
    <PackageReference Include="Microsoft.AspNetCore.Authentication.Facebook" Version="5.0.0" />
    <PackageReference Include="Microsoft.AspNetCore.Authentication.Google" Version="5.0.0" />
    <PackageReference Include="Microsoft.AspNetCore.Authentication.Twitter" Version="5.0.0" />
    <PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="5.0.0" />
    
    <PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="5.0.0" />
    <PackageReference Include="Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation" Version="5.0.0" Condition="'$(Configuration)' == 'Debug'" />
    <PackageReference Include="Microsoft.CodeAnalysis.FxCopAnalyzers" Version="3.3.1">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>


    <PackageReference Include="Microsoft.EntityFrameworkCore" Version="5.0.0" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="5.0.0" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="5.0.0">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>
    <PackageReference Include="Microsoft.Extensions.Logging.AzureAppServices" Version="5.0.0" />
    <PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="5.0.0" />
    <PackageReference Include="Microsoft.NETCore.App" Version="2.2.8" />
    <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="5.0.0" />
    <PackageReference Include="NLog.Extensions.Logging" Version="1.6.5" />
    <PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="3.2.4" />
    <PackageReference Include="System.Linq.Dynamic.Core" Version="1.2.5" />
    <DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.0.3" />
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="..\Alpha.DataAccess\Alpha.DataAccess.csproj" />
    <ProjectReference Include="..\Alpha.Infrastructure\Alpha.Infrastructure.csproj" />
    <ProjectReference Include="..\Alpha.LoggerService\Alpha.LoggerService.csproj" />
    <ProjectReference Include="..\Alpha.Models\Alpha.Models.csproj" />
    <ProjectReference Include="..\Alpha.Services\Alpha.Services.csproj" />
  </ItemGroup>

  <ItemGroup>
   <!-- ...-->
  </ItemGroup>

  <ItemGroup>
   <!-- ...-->
  </ItemGroup>

</Project>

person Said Roohullah Allem    schedule 20.11.2020    source источник
comment
Вы обновили ядро ​​Entity Framework до последней версии?   -  person Jamshaid K.    schedule 21.11.2020
comment
Да я сделал это. Вы можете это увидеть. ‹PackageReference Include = Microsoft.EntityFrameworkCore Version = 5.0.0 /›   -  person Said Roohullah Allem    schedule 21.11.2020
comment
Я удалил Pomelo.EntityFrameworkCore.MySql, и теперь он работает хорошо. На данный момент нет совместимого пакета Pomelo для .net5.0   -  person Said Roohullah Allem    schedule 21.11.2020
comment
Опубликуйте это как ответ, в наши дни люди тестируют его, и они могут попасть на этот пост.   -  person Jamshaid K.    schedule 21.11.2020


Ответы (2)


Я удалил Pomelo.EntityFrameworkCore.MySql, и теперь он работает хорошо. На данный момент нет совместимого пакета Pomelo для .NET 5:

https://github.com/PomeloFoundation/Pomelo.EntityFrameworkCore.MySql#schedule-and-roadmap

person Said Roohullah Allem    schedule 21.11.2020

Просто установите более новый совместимый пакет Pomelo.

Pomelo.EntityFrameworkCore.MySql (v5.0.0) фактически совместим с Microsoft.EntityFrameworkCore.Relational (v5.0.x)

person Milán Pataki    schedule 26.05.2021