使用属性的XML解析 [英] XML parsing using attributes
本文介绍了使用属性的XML解析的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有基于XML的配置的应用程序快捷方式绑定。我需要分析它。
< ShortcutBinding>
< ShortcutHandler名称=。Retail.Application.Documents.Outcome presentation.Outcome presenter>
<快捷方式名称=EditHeader>
<钥匙> CTRL< /钥匙>
<钥匙> F4< /钥匙>
< /快捷方式>
<快捷方式名称=EditItem>
<钥匙> F4< /钥匙>
< /快捷方式>
< / ShortcutHandler>
< / ShortcutBinding>
我知道,净有反序列化XML到对象的属性。 任何人都可以写完整的例子为这样的反序列化,使用属性。
解决方案
公共类ShortcutBinding
{
公共ShortcutHandler ShortcutHandler {获得;组; }
}
公共类ShortcutHandler
{
[XmlAttribute]
公共字符串名称{;组; }
[的XmlElement(快捷方式)
公开名单<快捷>快捷键{获得;组; }
}
公共类快捷键
{
[XmlAttribute]
公共字符串名称{;组; }
[的XmlElement(钥匙)
公开名单<字符串>键{获得;组; }
}
反序列化:
XmlSerializer的序列化=新的XmlSerializer(typeof运算(ShortcutBinding));
VAR结合=(ShortcutBinding)serializer.Deserialize(XmlReader.Create(路径));
I have XML-based config for application shortcuts bindings. i need to parse it.
<ShortcutBinding>
<ShortcutHandler Name ="Retail.Application.Documents.Outcome.Presentation.OutcomePresenter">
<Shortcut Name="EditHeader">
<Key>CTRL</Key>
<Key>F4</Key>
</Shortcut>
<Shortcut Name="EditItem">
<Key>F4</Key>
</Shortcut>
</ShortcutHandler>
</ShortcutBinding>
I know that .Net has attributes for deserializing XML into objects. Can anyone write complete example for such deserialization, using attributes.
解决方案
public class ShortcutBinding
{
public ShortcutHandler ShortcutHandler { get; set; }
}
public class ShortcutHandler
{
[XmlAttribute]
public string Name { get; set; }
[XmlElement("Shortcut")]
public List<Shortcut> Shortcuts { get; set; }
}
public class Shortcut
{
[XmlAttribute]
public string Name { get; set; }
[XmlElement("Key")]
public List<string> Keys { get; set; }
}
Deserializing:
XmlSerializer serializer = new XmlSerializer(typeof(ShortcutBinding));
var binding = (ShortcutBinding)serializer.Deserialize(XmlReader.Create(path));
这篇关于使用属性的XML解析的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文