#c# #entity-framework-core #bulkinsert
#c# #сущность-фреймворк-ядро #bulkinsert
Вопрос:
Я пытаюсь выполнить массовую вставку в отношение «один ко многим».
У меня есть два класса:
public class Parent {
public int Id {
get;
set;
}
public string Name {
get;
set;
}
public virtual ICollection<Child> Child {
get;
set;
} = new List < Child > ();
}
public class Child {
public int ChildId {
get;
set;
}
public virtual Parent Parent {
get;
set;
}
}
Когда я провел некоторые исследования и разработки, я обнаружил, что мы можем использовать IncludeGraph=true
для вставки дочерних таблиц.
public void BulkInsertAsync(IEnumerable<Parent> parent) {
_context.BulkInsert<Parent>(parent.ToList(), options => options.IncludeGraph = true);
}
Но проблема в том, что я получаю эту ошибку:
Массовая конфигурация не содержит определения для включения графа
Я пропустил какую-либо ссылку на сборку?
Пожалуйста, помогите мне в этом.
Комментарии:
1.
BulkInsert
не является встроенной функцией EF. Вы должны добавить тег для сторонней библиотеки, которую вы используете.2. Я добавил EFCore. BulkExtensions также включает пакет nuget.
Ответ №1:
Вам необходимо обновить свой EFCore.Пакет BulkExtensions. У меня была такая же ошибка в 3.1.6; обновление до 3.6.3 позволило этому работать. Обратите внимание, что мне также пришлось обновить EFCore с 3.1.9 до 3.1.21