Windows Phone 7 アプリケーションで奇妙な問題が発生しました。アプリでいくつかのxmlファイルを読み書きする必要がありIsolatedStorage
、データを収集するために使用しています。私のアプリはこれからデータを送受信SkyDrive
するので、それを使用します。
OK、例外を生成する関数は次のとおりです。
private void CreateFileIntoIsolatedStorage(List<Record> list)
{
isf = IsolatedStorageFile.GetUserStoreForApplication();
if(list.Count == 0)
list = new List<Record>() { new Record { Date = DateTime.Today, Value = 0 }};
if (isf.FileExists(fileName))
{
isf.DeleteFile(fileName);
}
XmlWriterSettings xmlWriterSettings = new XmlWriterSettings();
xmlWriterSettings.Indent = true;
using (IsolatedStorageFile myIsolatedStorage = IsolatedStorageFile.GetUserStoreForApplication())
{
using (IsolatedStorageFileStream stream = myIsolatedStorage.OpenFile(fileName, FileMode.Create))
{
XmlSerializer serializer = new XmlSerializer(typeof(List<Record>));
using (XmlWriter xmlWriter = XmlWriter.Create(stream, xmlWriterSettings))
{
serializer.Serialize(xmlWriter, list);
}
}
}
}
問題:
私の問題は、この関数を 2 回目に実行したときに始まります。次に、 IsolatedStorageExceptionisf.DeleteFile(fileName);
をスローします。そして、クラッシュしたアプリケーションを作成します。stream
デバイスで実行するたびに発生するのは奇妙な原因であり、デバッガーを使用する場合はめったに発生しません。
私の質問は、どうすれば解決できますか、またはこれを行うためのより良い方法はありますか?
どんな助けでも大歓迎です。