У меня есть приложение Windows Phone 7, которое уже много лет находится в магазине. Он устанавливается на устройствах WP 7.x, 8.0 и 8.1. Я конвертирую приложение в целевой WP8.1, поэтому я могу использовать новый Microsoft AdControl (старый будет прекращать показ объявлений в конце года). Это означает, что мне нужно будет начать использовать ApplicationData.Current.LocalFolder для чтения/записи данных, вместо использования старого изолированного объекта InventorRile.GetUserStoreForApplication().Обновление приложения WP7 до WP8.1. Будет ли WP8.1 ApplicationData доступ к тем же данным, которые были сохранены с использованием WP7 IsolStorageFile?
У моих пользователей есть много данных, которые были сохранены с использованием IsolStorageFile.GetUserStoreForApplication(). Если они обновляют приложение до версии WP8.1, я хочу быть уверенным, что они не потеряют ни одну из этих данных и что данные все равно будут доступны с помощью ApplicationData.Current.LocalFolder.
Может ли кто-нибудь подтвердить, что это так?
Это, как я написал данные в WP7:
using (IsolatedStorageFile applicationStorage = IsolatedStorageFile.GetUserStoreForApplication())
{
using (IsolatedStorageFileStream file = applicationStorage.OpenFile(filename, FileMode.Create, FileAccess.Write))
{
using (StreamWriter sw = new StreamWriter(file))
{
sw.WriteLine("some data goes here");
}
}
}
Это, как я буду читать данные в WP8.1:
using (Stream stream = await ApplicationData.Current.LocalFolder.OpenStreamForReadAsync(filename))
{
using (StreamReader sr = new StreamReader(stream))
{
String line = sr.ReadLine();
// Do something with line
}
}
Спасибо GeoIT, особенно за дополнительную деталь о PhoneProductId. – Jared