ASP.NET CORE 2.2 использует dotConnect для MySQL в качестве расширений провайдера и Entity Framework: провайдер не может быть разрешен - PullRequest
0 голосов
/ 16 июня 2019

Сообщество,

Я настраиваю dotConnect для провайдера MySql от Devart в сочетании с расширениями Entity Framework от zzzprojects.

К сожалению, соединение не стабильно с использованием AddDbContextPool.Соединение стабильно при использовании AddDbContext.

Я пытался зарегистрировать провайдера через options.ReplaceService, но не знаю, какой тип я должен использовать.

Причина, по которой я пытался зарегистрироватьсяСервис явным образом использует BulkSaveChangesAsync.Я получаю ошибку «Поставщик не может быть решен.Вы должны явно указать поставщика. '

Было бы замечательно, если бы у меня был совет для меня?

services.AddDbContextPool<DbContext>(options =>
  {   options.UseMySql(Configuration.GetConnectionString("Default"));
      options.UseQueryTrackingBehavior(QueryTrackingBehavior.NoTracking);
  });

Зависимости:

<ItemGroup>
    <PackageReference Include="AutoMapper" Version="8.0.0" />
    <PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="6.0.0" />
    <PackageReference Include="AWSSDK.Extensions.NETCore.Setup" Version="3.3.6" />
    <PackageReference Include="AWSSDK.S3" Version="3.3.31.10" />
    <PackageReference Include="CsvHelper" Version="12.1.2" />
    <PackageReference Include="Devart.Data.MySql.EFCore" Version="8.13.1402" />
    <PackageReference Include="Devart.Data.MySql.EFCore.Design" Version="8.13.1402" />
    <PackageReference Include="Microsoft.AspNetCore.All" />
    <PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="2.2.0" />
    <PackageReference Include="Microsoft.AspNetCore.Cors" Version="2.2.0" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Proxies" Version="2.2.4" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="2.2.4" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="2.2.4" />
    <PackageReference Include="Newtonsoft.Json" Version="12.0.1" />
    <PackageReference Include="Swashbuckle.AspNetCore" Version="4.0.1" />
    <PackageReference Include="Z.EntityFramework.Extensions.EFCore" Version="2.5.1" />
  </ItemGroup>

Ошибки:

1.Нестабильное соединение:

System.NullReferenceException: Object reference not set to an instance of an object.
   at Devart.Data.MySql.MySqlConnection()
   at Devart.Data.MySql.MySqlConnection.Open()

Использовать расширения Entity Framework

Поставщик не может быть разрешен.Вы должны явно установить поставщика.в at в Z.BulkOperations.BulkOperation. () в в в Z.BulkOperations.BulkOperation.Execute () в в в Z.BulkOperations.BulkOperation

Ответы [ 2 ]

1 голос
/ 16 июня 2019

Отказ от ответственности : я владелец проекта Расширения Entity Framework

Devart для MySQL еще не поддерживается в расширениях EF

Вот почему вы сейчас получаете эту ошибку. Мы посмотрим на это с нашей стороны, чтобы попытаться поддержать его.

0 голосов
/ 04 июля 2019

System.NullReferenceException: ссылка на объект не установлена ​​для экземпляра объекта.в Devart.Data.MySql.MySqlConnection ()

dotConnect для MySQL v8.13.1422 содержит следующие исправления:

  • Ошибка с неверным сообщением об исключении при открытии соединения, когдаConnectionString не установлена, исправлены совместимые сборки .NET Standard
  • Исправлена ​​ошибка с повторным открытием соединений в EF Core 2
...