墓石から戻ると、IsolatedStorageSettings.ApplicationSettingsのデータはなくなりました。IsolatedStorageSettings.ApplicationSettingsからのデータは、墓石からの復帰時に消えます。
ご意見やご提案をいただければ幸いです。ありがとう。
詳細:
私はIsolatedStorageSettings.ApplicationSettingsに値をオブジェクトに文字列キーをマップする辞書を保存しようと、墓石から戻った後、分離ストレージからすべての値がなくなっています。その辞書を保存しようとしなければ、トゥームストーンから戻るときに問題はありません。ここで
コードです:(エミュレータ上と自分の携帯電話の両方で - HTC HD7)
[DataContract]
[KnownType(typeof(TestClass))]
public class TestClass
{
[DataMember]
public string Property1 { get; private set; }
public TestClass(string prop1)
{
Property1 = prop1;
}
}
public static void AddValuesToIsolatedStorage()
{
IsolatedStorageSettings.ApplicationSettings["Key1"] = 1234;
IsolatedStorageSettings.ApplicationSettings["Key2"] = "abcd";
Dictionary<string, object> dict = new Dictionary<string, object>();
dict.Add("the key", new TestClass("a"));
// IsolatedStorageSettings.ApplicationSettings["Key3"] = dict;
// IsolatedStorageSettings.ApplicationSettings.Save();
}
私が観察し、何が2行は、私は墓石、IsolatedStorageSettingsから戻ったとき、コメントアウト残っている場合ということです。 ApplicationSettings.Countは2(expected)を返し、Key1とKey2の両方が存在します。
ただし、2つの行のコメントを外すと、墓石から戻ったときにIsolatedStorageSettings.ApplicationSettings.Countは0を返し、Key1もKey2もKey3もIsolatedStorageSettings.ApplicationSettingsにはありません。
期待されています:2つの行のコメントを外して、墓石から戻ると、IsolatedStorageSettings.ApplicationSettings.Countは3を返し、Key1、Key2、およびKey3が存在します。