我很擅长使用WCF并尝试处理xml消息。
从我迄今为止经历的情况来看,我通常会收到这样格式的XML。
<data>
<name>Jim</name>
<age>28</age>
<location>London</location>
</data>
然后我会分配每个元素“name”“age”等,如下所示
[DataContract(Namespace="",Name="data")]
public class Data
{
[DataMember(Name = "name")]
public string Name;
[DataMember(Name = "age")]
public string Age;
[DataMember(Name = "location")]
public string Location;
}
但是我正在使用的消息采用以下格式,我不确定如何处理它。
<dict>
<key>Name</key>
<string>Jim</string>
<key>Age</key>
<string>28</string>
<key>Location</key>
<data>London</data>
</dict>
有人能指出我正确的方向吗?
提前谢谢。
答案 0 :(得分:0)
快速而肮脏的解决方案是从您收到的文档中生成一个新的xml文档,如下所示:
var oldMessage = XDocument.Parse(message_string);
var newMessage = new XDocument(new XElement("data",
oldMessage.Root.Elements("key").Select(el =>
new XElement(el.Value.ToLower(),
el.ElementsAfterSelf().First().Value))));