Я получаю уникальное нарушение ограничений при попытке сделать SaveChanges()
на моем EF.Entity Framework 6 SaveChanges вызывает исключительное исключение ограничений
Есть две колонки, ID
и Order
. Единственное ограничение заключается в этих двух столбцах.
Я обновляю заказ (заменяя два значения).
Однако, когда я делаю SaveChanges()
Я получаю DBUpdateExcception
, заявив, что нарушил уникальное ограничение - но у меня его нет! Я только что заменил заказ.
Name | ID | Order
BH | 49 | 1
JK | 49 | 2
Так в коде, теперь он выглядит так (и я проверил EF в отладчике)
Name | ID | Order
BH | 49 | 2
JK | 49 | 1
Как я уже говорил, хотя, когда я SaveChanges()
я получаю исключение.
Я не знаю, есть ли проблемы с моей моделью в visual studio 2015 (нужно установить свойство или что-то, что позволит обновлять?). Проблема, похоже, в том, что «она» неправильно выполняет обновление.
Цените любую помощь!
Опубликовать свой реальный код на C#, например, модели и сохранить изменения –
Если я правильно понял, это невозможно. См. [Здесь] (https://social.msdn.microsoft.com/Forums/en-US/e483f98e-085b-46ba-b748-6e1614558efc/updating-the-entity-primary-key?forum=adodotnetentityframework). Как указано в ответе, можно удалить старый объект и readd new, но это зависит от структуры отношений с БД. – ieaglle
@CallumLinington Извините, у меня не было доступа к моему коду во время публикации - пришлось попробовать и сделать это во время обеда и из памяти. – Yabbie