2013-07-19 31 views
0

嘿,我需要一些幫助將XML文件的所有元素都變成一個變量。在C#中多層讀取XML

這是我的XML:

<?xml version="1.0"?> 
<labels> 
    <label> 
     <product>Prod. 1</product> 
     <colour>947 - Gold</colour> 
     <size>15</size> 
     <barcode>INT0919890</barcode> 
     <amount>15</amount> 
    </label> 
    <label> 
     <product>Prod. 4</product> 
     <colour>942 - Silver</colour> 
     <size>66</size> 
     <barcode>INT0912390</barcode> 
     <amount>16</amount> 
    </label> 
    <label> 
     <product>Prod. 8</product> 
     <colour>947 - Gold</colour> 
     <size>19</size> 
     <barcode>INT0932490</barcode> 
     <amount>11</amount> 
    </label> 
</labels> 

我如何使它所以我的程序得到的第一個標籤,將其放入變量,這樣我就可以用我的其他功能。然後繼續下一步?

回答

3

與LINQ解析到XML(返回強類型的匿名對象):

var xdoc = XDocument.Load(path_to_xml_file); 
var labels = from l in xdoc.Root.Elements() 
      select new { 
       Product = (string)l.Element("product"), 
       Colour = (string)l.Element("colour"), 
       Size = (int)l.Element("size"), 
       Barcode = (string)l.Element("barcode"), 
       Amount = (int)l.Element("amount") 
      }; 

用法:

foreach(var label in labels) 
{ 
    // use label.Product etc 
} 
+0

由於現在的產品,顏色等只是正常的變量,我可以打電話Foreach循環中的函數對嗎? – djkevino

+0

@djkevino試一試;) –

+0

它現在很好地工作謝謝男人:) – djkevino