Silverlight (MVVM, Prism) + службы данных WCF + Context.UpdateObject = контекст, не отслеживающий сущность - PullRequest
2 голосов
/ 07 апреля 2011

Silverlight 4 с призмой (шаблон MVVM).Я строю фильтр, который является типом данных из WCFDataService (Entity Framework).Я получаю его из контекста, затем вносю изменения в атрибут и вызываю Context.UpdateObject (filter);Я получаю страшный «Контекст не отслеживающий объект».

Поэтому я добавляю попытку / уловку, которая делает это перед вызовом метода обновления: context.AttachTo ("Filters", f);Это работает для элементов, которые никогда не были извлечены из базы данных раньше времени, но завершается неудачно с «другим объектом с тем же ресурсом Uri» на объектах, уже известных контексту (недавно использованных).

Так что же это?С одной стороны, он уже отслеживает, а с другой - нет?Я хотел бы иметь возможность снова извлечь его из контекста / базы данных, но в Silverlight все асинхронно.Я был бы в той же лодке, что и сейчас.

Идеи?

1 Ответ

1 голос
/ 07 апреля 2011

Я сделал ошибку, передавая один и тот же контекст данных. Создание нового для конкретной цели решило проблему. (Один для каждого типа CRUD)

...