SqlException: оператор INSERT конфликтует с ограничением FOREIGN KEY, хотя я сохраняю его в правильном порядке.C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 SqlException: оператор INSERT конфликтует с ограничением FOREIGN KEY, хотя я сохраняю его в правильном порядке.

Сообщение Anonymous »

Я добавляю сначала основную таблицу Order, затем элемент Order в базу данных. Элемент заказа должен иметь идентификатор заказа, сохраненный после того, как заказ был сохранен в базе данных. Заказ успешно сохраняется в базе данных, но элемент Заказа почему-то сразу его не видит и выдает ошибку

SqlException: оператор INSERT конфликтует с ограничением FOREIGN KEY

Я попробовал асинхронность и синхронизацию, но оба не сработали. Есть идеи, что я могу сделать?
// Save Order
Narudzba narudzba = new Narudzba
{
datum_vrijeme = selectedDateTime.Value,
racun = GenerateRacun(),
status = "Zaprimljeno",
Korisnik_id_korisnik = korisnik.id_korisnik
};

await _narudzbaServices.AddNarudzbuAsync(narudzba);

// Save Order items

foreach (var jelo in _selectedFoodItems)
{
Stavka_narudzbe stavka_Narudzbe = new Stavka_narudzbe
{
kolicina = "1",
prilagodbe = null,
Narudzba_id_narudzba = narudzba.id_narudzba,
Jelo_id_jelo = jelo.id_jelo,
Pice_id_pice = null
};
_stavka_narudzbeServices.AddStavkeNarudzbe(stavka_Narudzbe);
}

Способ, которым репозиторий служб добавляет заказ в базу данных:
public override Task AddAsync(Narudzba entity, bool saveChanges = true)
{
var narudzba = new Narudzba
{
datum_vrijeme = entity.datum_vrijeme,
racun = entity.racun,
status = entity.status,
Korisnik_id_korisnik = entity.Korisnik_id_korisnik
};

Entities.Add(narudzba);

if (saveChanges)
{
return Task.FromResult(SaveChanges());
}
else
{
return Task.FromResult(0);
}
}


Подробнее здесь: https://stackoverflow.com/questions/786 ... straint-ev
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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