我在使用WP7獨立存儲和應用程序設置時遇到很大問題。 我一直在使用Adam Nathan的101 Windows Phone 7應用程序卷1中的代碼作爲基礎。獨立存儲應用程序設置在應用程序退出後不持續
我有一個設置頁面,其中的值可以改變,而應用程序仍在運行,這些仍然活躍,它的一切都完美。但是,一旦應用程序在我的開發人員手機上退出,這些程序就會丟失,並且應用程序將使用默認設置重新啓動。
我不知道爲什麼這些值不會持續。任何幫助將非常感激。
這是我的代碼,它來自adam nathan的新書。我在twitter上給他發了一條消息,他說它使用的是不可序列化的數據類型。我看着這個,但我只使用double和bool值。
public class Setting<T>
{
string name;
T value;
T defaultValue;
bool hasValue;
public Setting(string name, T defaultValue)
{
this.name = name;
this.defaultValue = defaultValue;
}
public T Value
{
get
{
//checked for cached value
if (!this.hasValue)
{
//try to get value from isolated storage
if (IsolatedStorageSettings.ApplicationSettings.TryGetValue(this.name, out this.value))
{
//not set yet
this.value = this.defaultValue;
IsolatedStorageSettings.ApplicationSettings[this.name] = this.value;
}
this.hasValue = true;
}
return this.value;
}
set
{
//save value to isolated storage
IsolatedStorageSettings.ApplicationSettings[this.name] = value;
this.value = value;
this.hasValue = true;
}
}
public T DefaultValue
{
get { return this.defaultValue; }
}
//clear cached value;
public void ForceRefresh()
{
this.hasValue = false;
}
}
進一步發展:
我收到退出應用程序這個錯誤:
型 'System.IO.IsolatedStorage.IsolatedStorageException' 的第一次機會異常出現在mscorlib.dll
發現錯誤:我是個白癡,並且忽略了一個感嘆號!來自trygetvalue部分。
您能告訴我們您的隔離存儲代碼嗎? – keyboardP 2011-05-20 01:01:30
完成了,已經在上面加了,謝謝 – 2011-05-20 11:37:18
關於異常,請檢查一下這個線程:http://forums.create.msdn.com/forums/t/65662.aspx?PageIndex=1 – keyboardP 2011-05-20 13:55:02