0

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

デバイスで実行するたびに発生するのは奇妙な原因であり、デバッガーを使用する場合はめったに発生しません。

私の質問は、どうすれば解決できますか、またはこれを行うためのより良い方法はありますか?

どんな助けでも大歓迎です。

4

1 に答える 1