IsolatedStorageSettings.ApplicationSettings не сохраняется для перезагрузки - PullRequest
4 голосов
/ 16 февраля 2012

Я пишу приложение WP7 (Mango). Я сохраняю значения в WP7 IsolatedStorageSettings.ApplicationSettings, затем вызываю IsolatedStorageSettings.ApplicationSettings.Save();

Если я нажму назад и уйду с экрана, и я вернусь, я смогу прочитать значения очень хорошо. Однако, если я нажимаю перезагрузку в отладчике (или просто перезапускаю из эмулятора), ApplicationSettings выдает KeyNotFoundException , , как если бы он не сохранялся ...
Я еще не попробовал это на устройстве, у меня нет ни одного доступного прямо сейчас.

Что я могу делать не так?

Ответы [ 4 ]

7 голосов
/ 05 марта 2012

Оказывается, проблема была не в эмуляторе вообще, , поэтому все, кто предположил, что это "по замыслу" в эмуляторе, оказались не правы (но я не могу отменить свои возражения, так как онизаблокированы).

Проблема заключалась в том, что я попытался сохранить несериализуемый класс , и wp7 обработал это путем , выбрасывая ВСЕ мои настройки при следующем Save().Когда я удалил этот единственный Add () (или, точнее, сериализовал этот объект с помощью JSON.net (который МОЖЕТ его обработать) и сохранил строку json), все мои проблемы просто исчезли.

Тем не менее, смешное поведениечасть wp7.

1 голос
/ 19 февраля 2012

Проверьте этот вопрос: Автоматический процесс входа в приложение Windows Phone 7.1

  1. В эмуляторе IsolatedStorage не является постоянным после перезагрузки, и это для обоих файлов инастройки приложения.
  2. Вы можете использовать инструмент изолированного хранилища из wp7 sdk, чтобы сделать снимок изолированного содержимого хранилища и восстановить его после перезапуска: Нажмите
  3. Эта проблема не устранена.на реальном устройстве, где изолированное хранилище постоянно .
1 голос
/ 16 февраля 2012

Это поведение "специально" на эмуляторе.

Я предлагаю ниже шаги для вашего кода.1. Проверьте, доступен ключ или нет. 2. Если нет, установите для него значение по умолчанию.

0 голосов
/ 20 февраля 2012

Я получил ту же ошибку (ошибка возникает потому, что после остановки отладчика ключ удаляется ), и я отправил вопрос по этому поводу: Процесс автоматического входа в систему в приложении Windows Phone 7.1 . Предлагаем вам использовать настройки сайта вместо настроек приложения. Еще один вариант: http://www.codeguru.com/csharp/.net/wp7/article.php/c19215/Using-Isolated-Storage-for-your-Windows-Phone-7-WP7-App.htm. Надеюсь, это решит вашу проблему.

...