0
我正在創建一個WP8購物清單應用程序,用於存儲用戶創建的清單(在我的代碼中,每個購物清單都定義爲我定義的ListObj)。我想通過.xml文件保存用戶創建的列表。只要我繼續添加到這個ListObj列表中,我似乎沒有任何問題。但是當我想從列表中刪除ListObj時,我開始遇到麻煩。當我重新打開我的應用程序後,我從我的ListObj的列表中刪除的東西,並試圖在啓動時加載我的名單,我進入這個try/catch塊:WP8:丟失數據或在獨立存儲中訪問XML文件
try
{
using (IsolatedStorageFile appStorage =
IsolatedStorageFile.GetUserStoreForApplication())
{
if (appStorage.FileExists("rootList.xml"))
{
using (IsolatedStorageFileStream isStream =
appStorage.OpenFile("rootList.xml",
FileMode.Open, FileAccess.Read))
{
XmlSerializer serializer = new XmlSerializer(typeof(List<ListObj>));
rootList = (List<ListObj>)serializer.Deserialize(isStream);
}
}
else
{
rootList = new List<ListObj>();
Debug.WriteLine("rootList not found.");
}
}
}
catch
{
///Uhhh....
}
然而,我的程序執行中什麼也沒有發生catch語句明顯。我不確定在這個catch塊中執行什麼來診斷我的問題。我認爲我失去了訪問應用程序的隔離存儲空間,但我仍然不確定如何繼續。有任何想法嗎?
如果你改變你的catch來捕捉(Exception ex),什麼是異常消息? – Jedidja
爲了調試目的暫時刪除'try-catch',以便您可以看到更詳細的錯誤消息 – har07
異常消息: mscorlib.ni.dll中發生類型爲'System.Reflection.TargetInvocationException'的異常,並且在託管/本機邊界 mscorlib.ni.dll中發生類型爲「System.IO.FileNotFoundException」的異常,並且未在託管/本機邊界之前處理 System.Xml中發生第一次機會類型爲「System.InvalidOperationException」的異常.Serialization.ni.dll System.Xml.Serialization.ni.dll中發生類型'System.InvalidOperationException'的異常,但未在用戶代碼中處理 –