2011-07-13 91 views
0

我是新來的LINQ選擇實體,iv'e得到了一個XML文件作爲這樣使用LINQ爲xml

<?xml version="1.0" standalone="yes"?> 
    <NewDataSet> 
     <Order> 
      <OrderID>1</OrderID> 
      <ProductID>11</ProductID> 
      <UnitPrice>14.0000</UnitPrice> 
      <Quantity>12</Quantity> 
      <Discount>0</Discount> 
     </Order> 
     <Order> 
      <OrderID>2</OrderID> 
      <ProductID>42</ProductID> 
      <UnitPrice>9.8000</UnitPrice> 
      <Quantity>10</Quantity> 
      <Discount>0</Discount> 
     </Order> 
     . 
     . 
</NewDataSet> 

現在我想要查詢所有名爲「訂單」

 var query = from e in XElement.Load("..//..//OrderDetailsData.xml").Elements("Order") 
        select e.Element("Order"); 
元素

這個沒有返回

iv'e也試過

 var query = from e in XElement.Load("..//..//OrderDetailsData.xml").Descendants("NewDataSet").Elements("Order") 
     select e.Element("Order"); 

問題是我如何選擇名爲Order的多個元素? (不,這甚至選擇單個元素) 有配偶是某種黏巴達的「其中e => E」或類似的東西...

結束..我只是不明白如何查詢使用LINQ到XML,因爲我會LINQ列表

回答

0

你只是想要var query = XElement.Load("..//..//OrderDetailsData.xml").Elements("Order");或如果你真的認爲from select是有用的,然後使用var query = from order in XElement.Load("..//..//OrderDetailsData.xml").Elements("Order") select order;

+0

謝謝,我忘了評論這個,我終於明白了。 –