Зависимое заполнение данных в рамках AbpC#

Место общения программистов C#
Anonymous
Зависимое заполнение данных в рамках Abp

Сообщение Anonymous »

Я пытался заполнить некоторые данные, но получил следующую ошибку:

SqlException: оператор MERGE конфликтовал с ограничением FOREIGN KEY "FK_SubCategories_Categories_CategoryId"

Сначала я попытался использовать несколько IDataSeedContributor (один для категорий, один для подкатегорий), я не могу контролировать порядок выполнения, насколько я знаю.
Во-вторых, я пытался использовать несколько IDataSeeder и один общий IDataSeedContributor, контекст удаляется при запуске второго источника данных.
Третий я попробовал общий IDataSeedContributor, который содержит две категории и подкатегории - но получаю ошибку:

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

> SqlException: The MERGE statement conflicted with the FOREIGN KEY constraint "FK_SubCategories_Categories_CategoryId"
С автосохранением: true:

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

await categoryRepository.InsertManyAsync(categories ,autoSave: true);
autoSave:true означает сохранение данных до окончания единицы работы (это не рекомендуется, но иногда это необходимо). Как указано в документации:
Примечание. Все изменения автоматически сохраняются, когда единица работы завершается без каких-либо ошибок. Поэтому не вызывайте SaveChangesAsync() и не устанавливайте для autoSave значение true, если оно вам действительно не нужно.
Но это не работает должным образом, остается та же ошибка fk.
Любая помощь будет очень признательна.

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