Я использую Entity Framework с самопроверкаемыми объектами через WCF.
У меня есть 2 сущности, Customer и PriceMatrix с отношением «многие ко многим» (у клиента может быть много исторических ценовых матриц, и матрица может быть разделена между группой клиентов)
У клиента есть один PriceMatrix, который он обновляет и отправляет обратно на сервер.Сервер должен проверить, доступен ли этот PriceMatrix другим клиентам, прежде чем либо обновить его, либо продублировать, либо обновить дубликат.
Проблема, с которой я столкнулся, заключается в том, что я загружаю PriceMatrix, чтобы проверить его раньшеЯ прикрепляю обновленную PriceMatrix. Я получаю следующую ошибку при вызове ApplyChanges ().
"AcceptChanges не может продолжить работу, поскольку значения ключей объекта конфликтуют с другим объектом в ObjectStateManager. Убедитесь, что значения ключей являются уникальными, прежде чемвызывая AcceptChanges. "
Если я закомментирую свои чеки (и, следовательно, не загружу PriceMatrix), все будет работать нормально.
Что я действительно хочу сделать, так это после изучения его состояния выгрузить PriceMatrix и затемприкрепите обновленный PriceMatrix, полученный от клиента.