使用xdocument排序后访问该值

本文关键字:访问 xdocument 排序 使用 | 更新日期: 2023-09-27 18:03:06

代码如下:

//LOADED MY XML
jobdetails.group = TM_item.Group_xml.ToString();
var xDoc = XDocument.Parse(jobdetails.group); //jobdetails is a model object
var newxDoc = new XElement("Root", 
   xDoc.Root
      .Elements()
      .OrderBy(x => (string)x.Attribute("name"))
      .Select(n => new 
      {
            GroupName = n.Attribute("name").Value, 
            status = n.Element("Status").Value 
      })
);
xml = newxDoc.ToString();

现在我想访问GroupNamestatus,并希望将其存储在out变量中??对此有什么建议吗?

使用xdocument排序后访问该值

匿名类型没有(程序员可访问的)类型名。

所以你需要定义一个。或者使用框架中的内容:
void GetData(out Tuple<string, string> extracted) {
  extracted = null;
  // ...
  extracted = xDoc.Root.Elements()
                  .OrderBy(x => (string)x.Attribute("name"))
                  .Select(n => Tuple.Create(
                                       n.Attribute("name").Value, 
                                       n.Element("Status").Value
                  ));
               );
}