Entity Framework ObjectContext в приложении Windows / WPF / Silverlight

Мы пишем приложение WPF, используя Entity Framework (Silverlight с RIA-службами, если быть точным). Мы'использование общего ObjectContext через приложение, чтобы мы могли извлечь выгоду из совместного использования данных между модулями.

Проблема в том, что если пользователь во время своей работы открывает let 'скажем, исторические продажи, он загружается в ObjectContext и остается там до конца приложения. Таким образом, следует использовать другой шаблон.

Я знаю, что ObjectContexts следует использовать как единое целое. Но тогда как вы сообщите другим частям приложения, что что-то изменилось, и им следует перезагрузить свои данные?

Редактировать: Хорошо, EventAggregator, но тогда это заставит все остальные части перезагружать свои (вероятно, большая часть дублирует) данные. Также, вероятно, много событий будет необходимо для всех типов групп Entites.

Как вы решаете эти проблемы? Мое текущее решение является своего рода компромиссом - используйте общий ObjectContext для основных данных, используемых целым приложением, чтобы они могли совместно использоваться и обновляться автоматически. А для большого объема данных используйте новый отдельный ObjectContext. Есть идеи получше?

Есть ли способ, какрелиз" сущности из их DataContext, чтобы сборщик мусора мог выполнить свою работу и освободить память?

Ответы на вопрос(4)

Ваш ответ на вопрос