Как использовать EFCore.BulkExtensions в ASP. NET Boilerplate - PullRequest
0 голосов
/ 23 апреля 2020

Мне нужно выполнить массовую вставку в ASP. NET Boilerplate, и я попытался реализовать EFCore.BulkExtensions после прочтения https://github.com/aspnetboilerplate/aspnetboilerplate/issues/4397.

Я установил последнюю версию EFCore. BulkExtensions из nuget в проект, и я попытался использовать doContext, как показано ниже, чтобы я мог использовать его везде, где требуется.

public class MyQueryExecutor : IMyQueryExecutor, ITransientDependency
{
    private readonly IDbContextProvider<ModCoreDbContext> _dbContextProvider;

    public MyQueryExecutor(IDbContextProvider<ModCoreDbContext> dbContextProvider)
    {
        _dbContextProvider = dbContextProvider;
    }

    public void BulkImport<T>(IList<T> entities) where T : class
    {
        _dbContextProvider.GetDbContext().BulkInsert(entities);
    }
}

public interface IMyQueryExecutor
{
    void BulkImport<T>(IList<T> entities) where T : class;
}

Я ссылался на EFCore.BulkExtensions в необходимых проектах, и когда я пытался запустить проект, я я получаю сообщение об ошибке, когда выполнение попадает в следующую строку в Startup.cs

 app.UseAbp(); //Initializes ABP framework.

Ошибка:

TypeLoadException: Could not load type 'Microsoft.EntityFrameworkCore.Metadata.Internal.EntityMaterializerSource' from assembly 'Microsoft.EntityFrameworkCore, Version=3.1.3.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'.

Фактический Microsoft.EntityFrameworkCore, который является частью шаблона рамки 2.2.4

...