我得到了一個XML輸入字符串,並且想將其反序列化爲部分保留原始XML的對象。如何在XML反序列化期間將XML字符串保留爲字符串字段
<SetProfile>
<sessionId>A81D83BC-09A0-4E32-B440-0000033D7AAD</sessionId>
<profileDataXml>
<ArrayOfProfileItem>
<ProfileItem>
<Name>Pulse</Name>
<Value>80</Value>
</ProfileItem>
<ProfileItem>
<Name>BloodPresure</Name>
<Value>120</Value>
</ProfileItem>
</ArrayOfProfileItem>
</profileDataXml>
</SetProfile>
類定義:
public class SetProfile
{
public Guid sessionId;
public string profileDataXml;
}
我希望反序列化語法類似於
string inputXML = "..."; // the above XML
XmlSerializer xs = new XmlSerializer(typeof(SetProfile));
using (TextReader reader = new StringReader(inputXML))
{
SetProfile obj = (SetProfile)xs.Deserialize(reader);
// use obj ....
}
但XMLSerializer的將拋出一個異常,也不會輸出< profileDataXml>的後代原始XML字符串中的「profileDataXml」字段。
是否有任何方式來實現這樣的反序列化?
XElement完美無瑕。謝謝! – detale