Зависимость DataSeeding в рамках AbpC#

Место общения программистов C#
Anonymous
Зависимость DataSeeding в рамках Abp

Сообщение Anonymous »

Я пытался заполнить некоторые данные, но получил следующую ошибку: SqlException: оператор MERGE конфликтует с ограничением FOREIGN KEY "FK_SubCategories_Categories_CategoryId".
Сначала я попытался выполнить несколько IDataSeedContributor (один для категорий, один для подкатегорий), я не могу контролировать порядок выполнения, насколько я знаю.

Во-вторых, я попытался создать несколько IDataSeeder и один общий IDataSeedContributor, контекст удаляется при запуске второго источника данных.

В-третьих, я попробовал общий IDataSeedContributor, который содержит две категории и одну ошибку подкатегорий: SqlException: оператор MERGE конфликтует с ограничением FOREIGN KEY "FK_SubCategories_Categories_CategoryId". С автосохранением:true:

Код: Выделить всё

await categoryRepository.InsertManyAsync(categories ,autoSave: true);
autoSave:true означает сохранение данных до окончания единицы работы (это не рекомендуется, но иногда это необходимо). Как указано в документации:

Код: Выделить всё

Note-1: All changes are automatically saved when a unit of work ends without any error. So, don't call SaveChangesAsync() and don't set autoSave to true unless you really need it.
но он не работает так, как ожидалось, та же ошибка fk остается.
любая помощь будет очень признательна.

Вернуться в «C#»