【问题标题】:XML Deserialization of child nodes to C# objects将子节点的 XML 反序列化为 C# 对象
【发布时间】:2015-04-10 01:37:26
【问题描述】:

给定以下 XML 结构:

<RootNode>
  <NodeA>
      <Value>1</Value>
      <Value>2</Value>
  <NodeA>
  <NodeB>
      <Value>100</Value>
      <Value>200</Value>
  <NodeB>
</RootNode>

如何将其反序列化为以下 c# 对象

List<NodeA> and List<NodeB>

【问题讨论】:

  • @MatthewFrontino 我认为您链接到的文章名称错误......大多数答案都涉及序列化,而不是反序列化。
  • @Kjata30 嗯,我相信这个问题的答案是序列化,因为您使用相同的对象映射来进行序列化和反序列化。当你序列化你的对象时,你可以使用相同的集合类来反序列化吗? (您可以使用一组不同的类,但仍需要以相同的方式映射属性)

标签: c# xml-deserialization


【解决方案1】:

使用 XMLDocument.SelectNodes 为要处理的每个子节点创建一个新对象,然后使用泛型方法为每个节点创建和转换一个新的 C# 对象。

另请参阅:split xml document into chunksHow to Deserialize XML document

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-11-30
    • 1970-01-01
    • 2018-07-17
    • 1970-01-01
    • 1970-01-01
    • 2023-03-29
    相关资源
    最近更新 更多