Как обрабатывать TombStoning в WP7 ViewModelLocator

Когда мое приложение WP7 возвращается после захоронения, оно создает класс ViewModelLocator, который я сохранил в App.Resources. Как ты думаешь с этим справиться? В моем конструкторе ViewModelLocator создается несколько моделей ViewModel, и в этих конструкторах есть несколько вызовов службы WCF. Кажется неправильным позволять этому классу воссоздаваться каждый раз, когда он возвращается после захоронения.

Похоже, мне нужно сериализовать ViewModelLocator до того, как мое приложение получит Tombstone, и десериализовать его после. Звук правильный??? и есть ли что-то в MVVM-Light для этого?


person Tyler    schedule 28.12.2010    source источник


Ответы (1)


Вам обязательно нужно сохранить свои данные, чтобы иметь возможность восстановить их после захоронения.

MVVM Light предоставляет вам платформу MVVM, а не решение для хранения данных WP7. Вам нужно будет реализовать это самостоятельно, используя любой формат хранилища, наиболее подходящий для вас, и изолированное хранилище.

Вот базовый пример, в котором используется IsolatedStorageSettings... абстракция на основе словаря, предоставляемая SDK WP7.

Захоронение на мобильной платформе Win7

person Mick N    schedule 28.12.2010
comment
Есть ли какой-то шаблон, который я должен использовать для этого? Похоже, мне придется убрать ViewModelLocator из App.Resources, сделать его одноэлементным и позаботиться о его создании/сериализации/десериализации в Application_Activated и Application_Deactivated. Но я не уверен, что сделать его синглтоном — хорошая идея, и если это каким-то образом испортит мои привязки View - person Tyler; 28.12.2010