<data> <item id="1"> <child id="1" name="aa"></child> <child id="2" name="bb"></child> <child id="3" name="cc"></child> </item> <item id="2"> <child id="1" name="aa"></child> <child id="2" name="bb"></child> <child id="3" name="cc"></child> </item></data>我想用一個linq根據(jù)傳入的item節(jié)點的ID值和child節(jié)點的ID值 ,來獲取對應的child節(jié)點下的name的屬性值。 這個linq如何寫啊,
2 回答

拉丁的傳說
TA貢獻1789條經(jīng)驗 獲得超8個贊
public static string GetName(int itemID, int childID) { var x = XElement.Load(@"E:\test.xml"); var value = x.Descendants("item") .SingleOrDefault(e => e.Attribute("id").Value == itemID + "") .Descendants("child") .SingleOrDefault(e => e.Attribute("id").Value == childID + "") .Attribute("name") .Value; return value; }
跟樓上的差不多

嚕嚕噠
TA貢獻1784條經(jīng)驗 獲得超7個贊
string iditem = "2"; 2 string idchild = "3"; 3 var element = XElement.Parse(xml); 4 var itemEle = element.Descendants("item").Where(r => r.Attribute("id").Value == iditem).First(); 5 var childEle = itemEle.Descendants("child").Where(r => r.Attribute("id").Value == idchild).First(); var name = childEle.Attribute("name").Value;
隨手一寫,高手勿笑。
- 2 回答
- 0 關注
- 562 瀏覽
添加回答
舉報
0/150
提交
取消