簡體   English   中英

如何使用嵌套的同名元素反序列化Xml文件?

[英]How to deserialize Xml file with nested elements of same name?

我有帶有以下元素的XML文件:

<Reqs>
    <Source>
        <Sec name="A">
            <Sec name="L">
                <Sec name="B">
                    <Req>
                        <Content></Content>
                        <Title></Title>
                        <Pro></Pro>
                    </Req>
               </Sec>
           </Sec>
      </Sec>
  </Source>
</Reqs>

元素具有相同的名稱和嵌套名稱,如何使用C#反序列化呢?

public class Reqs {
    public Source Source {get;set;}    
}
public class Source {
    public Sec Sec {get;set;}
}
public class Sec {
    [XmlAttribute("name")]
    public string Name {get;set;}
    [XmlElement("Sec")]
    public Sec InnerSec { get; set; }

    public Req Req {get;set;}
}
public class Req {
    public string Content {get;set;}
    public string Title {get;set;}
    public string Pro {get;set;}
}

有:

var reqs = new Reqs {
    Source = new Source {
        Sec = new Sec {
            Name = "A",
            InnerSec = new Sec {
                Name = "L",
                InnerSec = new Sec {
                    Name = "B",
                    Req = new Req {
                        Content = "",
                        Title = "",
                        Pro = ""
                    }
                }
            }
        }
    }
};
var ser = new XmlSerializer(typeof(Reqs));
ser.Serialize(Console.Out, reqs);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM