Ошибка при работе с .NET Entity Framework
От: lutikman  
Дата: 14.01.11 08:28
Оценка:
Добрый день.
Работаю с .NET Entity Framework
В определенный ситуациях вываливается ошибка с таким текстом:
Изменения в базе данных выполнены успешно, но при обновлении контекста объекта произошла ошибка.
Контекст ObjectContext может находиться в несогласованном состоянии. Сообщение о внутреннем исключении:
Не удается продолжить выполнение метода AcceptChanges, поскольку значения ключей объекта конфликтуют 
с другим объектом в диспетчере ObjectStateManager. Перед вызовом метода AcceptChanges убедитесь в уникальности значений ключей.
Re: Ошибка при работе с .NET Entity Framework
От: binom82 Россия  
Дата: 14.01.11 11:51
Оценка:
Приведи пример кода, когда заполняешь ObjectContext
Re: Ошибка при работе с .NET Entity Framework
От: mrjeka Россия  
Дата: 14.01.11 14:22
Оценка:
Здравствуйте, lutikman, Вы писали:

L>Добрый день.

L>Работаю с .NET Entity Framework
L>В определенный ситуациях вываливается ошибка с таким текстом:
L>
L>Изменения в базе данных выполнены успешно, но при обновлении контекста объекта произошла ошибка.
L>Контекст ObjectContext может находиться в несогласованном состоянии. Сообщение о внутреннем исключении:
L>Не удается продолжить выполнение метода AcceptChanges, поскольку значения ключей объекта конфликтуют 
L>с другим объектом в диспетчере ObjectStateManager. Перед вызовом метода AcceptChanges убедитесь в уникальности значений ключей.
L>


Как вы делаете вставку? Если через ХП, то процедура должна возвращать вставленную запись. В модели поле-идентификатор должно быть выставлено как ключ. Еще такие косяки могут быть, если вы делаете обновление не таблицы, а view. У меня такая ситуация, в EDM сущность наложена на view и сделана процедура добавления записи. Данные в БД парсятся и раскладываются по таблицам. Но когда возвращается новая запись для view на клиента, то происходит конфликт ключей.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.