2010-07-08 74 views
2

有下一個XML文件:C#XML德序列化和陣列

<element Name="root"> 
    <SubFields> 
     <element Name="subroot"> 
      <SubFields> 
       <element1 Name="element1" customatt1 = "12313" customatt2 = "asdfasfadsfasd"> 
        <subelement Name="subelement" /> 
       </element1> 
       <element1 Name="element11" customatt1 = "12313" customatt2 = "asdfasfadsfasd"> 
        <subelement Name="subelement" /> 
       </element1> 
       <element1 Name="element111" customatt1 = "12313" customatt2 = "asdfasfadsfasd"> 
        <subelement Name="subelement" /> 
       </element1> 
       <element2 Name="element2" path = "asdfdsf" widget="asdasdasd"> 
        <subelement Name="subelement" /> 
       </element2> 
       <element2 Name="element22" path = "asdfdsf" widget="asdasdasd"> 
        <subelement Name="subelement" /> 
       </element2> 
       <element2 Name="element222" path = "asdfdsf" widget="asdasdasd"> 
        <subelement Name="subelement" /> 
       </element2> 
      </SubFields> 
     </element> 
    </SubFields> 
</element> 

我映射的元素的數組作爲[XmlArray("SubFields")]其中子場是陣列和問題的根: 如何映射差異類型對象元素的? 我可以有很多subroot -s元素。

回答

0

使用XMLSerializer類。在底部附近那裏有一個關於使用部分財產屬性的對象映射到XML元素

+0

是的,我使用 – jitm 2010-07-08 10:24:01

+0

問題如何區別元素映射爲XML序列中的對象的主要思路和「地圖」在我的理解使用C#屬性,如[XMLArray]等。 – jitm 2010-07-08 10:29:31

+0

你需要這種確切格式的XMl嗎?如果不是它通常是一個更容易創建和填充的對象,然後就可以進行序列化和反序列化到XML,而不是倒過來。 – w69rdy 2010-07-08 10:34:39