Свойство с StoreGeneratedPattern, установленным в Identity, не обновляется после SaveChanges () - PullRequest
0 голосов
/ 16 ноября 2011

У меня есть метод, который записывает информацию журнала в Db. Этот метод вызывается в цикле. На второй вставке я получаю InvalidOperationException:

Изменения в базе данных были успешно зафиксированы, но при обновлении контекста объекта произошла ошибка. ObjectContext может быть в несовместимом состоянии. Внутреннее сообщение об исключении: AcceptChanges не может продолжаться, потому что значения ключа объекта конфликтуют с другим объектом в ObjectStateManager. Убедитесь, что значения ключей являются уникальными, прежде чем вызывать AcceptChanges.

Я проверил и SSDL, и CSDL: они в порядке. Для StoreGeneratedPattern установлено значение Identity. БД также в порядке - соответствующее свойство id является тождественным.

Я обнаружил, что после

contex.LogHystory.AddObject(logEntry);
context.SaveChanges();

logEntry.Id по-прежнему равен 0. Поэтому после следующего вызова мы получили две записи с одинаковым Id. Почему свойство Identity не обновляется после SaveChanges?

1 Ответ

0 голосов
/ 17 ноября 2011
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...