我已經得到了Windows Phone 7的一些代碼,對於RSS應用:DataContractSerializer的失敗,空數據
private RSSSettings DeserializeSettings(string data)
{
RSSSettings rsssettings;
try
{
var ser = new DataContractSerializer(typeof(RSSSettings));
using (var sr = new StringReader(data))
using (var xr = XmlReader.Create(sr))
rsssettings = (RSSSettings)ser.ReadObject(xr);
}
catch (Exception ex)
{
ex.ToString();
rsssettings = new RSSSettings() { Version = -1 };
}
return rsssettings;
}
它完美地在Windows Phone 7我移植應用到Windows Phone 8,和一切除此片段外,其他應用程序都可以工作。
比較在Windows Phone 7和8中發生的情況,WP8中的「rsssettings」在WP7中正確填充時仍爲空。這部分代碼根本沒有代碼變更。
一切正常,直到形成:
rsssettings = (RSSSettings)ser.ReadObject(xr);
異常不叫。
任何人都知道如何解決這個令人沮喪的問題?
我會先比較兩者之間的數據對象的內容。他們是一樣的嗎? – Bryant
數據對象完全一樣。這是什麼讓我如此迷惑:( – ReignOfComputer
在這兩種情況下的數據都是XML,這兩種情況似乎都一直運載數據,直到我突出顯示的那條線。 – ReignOfComputer