2
我有一個簡單的類具有兩個屬性:爲什麼XmlSerializer不能識別這個屬性?
[XmlRoot("response")]
public class Response
{
[XmlAttribute("code")]
string Code { get; set; }
[XmlAttribute("message")]
string Message { get; set; }
}
我嘗試反序列化與XmlSerializer的一個XML字符串:
static void Main(string[] args)
{
string xml = "<response code=\"a\" message=\"b\" />";
using(var ms = new MemoryStream())
using(var sw = new StreamWriter(ms))
{
sw.Write(xml);
sw.Flush();
ms.Position = 0;
XmlSerializer ser = new XmlSerializer(typeof(Response));
ser.UnknownAttribute += new XmlAttributeEventHandler(ser_UnknownAttribute);
var obj = ser.Deserialize(ms);
}
}
static void ser_UnknownAttribute(object sender, XmlAttributeEventArgs e)
{
throw new NotImplementedException();
}
的UnknownAttribute
事件被在code
屬性解僱,它不會反序列化。
這是什麼原因?我使用XmlAttributeAttribute是否錯誤?
明顯!謝謝 :)。我一直在盯着代碼,現在用Google搜索了半個小時。一旦啓用,我會盡快接受答案。 – 2013-05-02 10:07:03