2014-05-11 174 views
1

我試圖將此查詢的結果綁定到組合框。C#xml linq查詢結果格式化

public IEnumerable<object> getGenres() 
    { 
     var genres = (from item in data.Descendants("genre") 
        select new 
        { 
         Genre = item.Value 
        }).Distinct(); 


     return genres.ToArray(); 
    } 

我的xml看起來像這樣減去根元素。

<preformance> 
     <venue> Captain Cook Tavern </venue> 
     <date> 30/05/2013 </date> 
     <time> 11:00pm </time> 
     <band> 
      <name> Cult Disney </name> 
      <genre> Punk Rock</genre> 
     </band>  
    </preformance> 

它以這種格式進行綁定。

{ Genre = Punk Rock } 

對我來說,它看起來像我需要深入一個節點來獲取實際值而不是xml標記本身,但我不知道該怎麼做。

請問誰能指出我正確的方向?

謝謝

回答

1

你實際上是創建一個名爲類型的單一成員的匿名類。這會導致額外的嵌套。相反,你可以這樣做:

public IEnumerable<string> getGenres() 
{ 
    var genres = (from item in data.Descendants("genre") 
       select item.Value).Distinct(); 

    return genres.ToArray(); 
} 
+0

我明白我現在在做什麼,謝謝。 – user3606900