Исключение IsolatedStorageFileStream является броском при открытии файла? - PullRequest
6 голосов
/ 22 декабря 2010

при попытке открыть файл в приложении WP7:

IsolatedStorageFile isf = IsolatedStorageFile.GetUserStoreForApplication();
IsolatedStorageFileStream nameXmlFile = new IsolatedStorageFileStream("Names.xml", System.IO.FileMode.Open, isf);

Я получаю следующую ошибку:

Операция не разрешена в IsolatedStorageFileStream.

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

EDIT

Я использовал следующий код для добавления файла в изолированное хранилище в событии App.xaml.cs Application_Launching:

IsolatedStorageFile isf = IsolatedStorageFile.GetUserStoreForApplication();
IsolatedStorageFileStream feedXmlFile = new IsolatedStorageFileStream("Names.xml",System.IO.FileMode.Create, isf);

Ответы [ 3 ]

4 голосов
/ 22 декабря 2010

Одна из проблем с использованием конструктора IsolatedStorageFileStream заключается в том, что сгенерированное исключение имеет ограниченную информацию.Альтернативный метод OpenFile имеет более богатый набор исключений.

Как общее практическое правило, если API позволяет вам делать то же самое с конструктором или с методом, сходным с методом.В этом случае попробуйте этот код: -

IsolatedStorageFile isf = IsolatedStorageFile.GetUserStoreForApplication();
IsolatedStorageFileStream nameXmlFile = isf.OpenFile("Names.xml", System.IO.FileMode.Open);

Если это не удастся, вы, по крайней мере, сузите потенциальную причину.

Это может показаться очевидным, но в вашем коде создания вы на самом деле имеетезаписал и закрыл созданный вами файл?

2 голосов
/ 01 марта 2012

При возникновении исключения во время доступа к файлу проверьте две вещи:

2 голосов
/ 22 декабря 2010

IsolatedStorage Exception - известная проблема при запуске Application_Launching. подробнее

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...