Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
247 views
in Technique[技术] by (71.8m points)

How to sort numbers in C# XML?

I have the following xml code:

    <highscore>
  <score>
    <naam>Pipo</naam>
    <punten>200</punten>
  </score>
  <score>
    <naam>Harry</naam>
    <punten>400</punten>
  </score>
</highscore>

How can I sort by "punten"? So the highest number is on top?

Thanks!!

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
var xml=@" <highscore>
  <score>
    <naam>Pipo</naam>
    <punten>200</punten>
  </score>
  <score>
    <naam>Harry</naam>
    <punten>400</punten>
  </score>
</highscore>";

var doc = XDocument.Parse(xml);
var orderedScoreElements = 
      doc.Root
         .Elements("score")
         .OrderByDescending(e => (int)e.Element("punten"))
         .ToList();

and to rewrite the doc in order:

doc.Root.RemoveNodes();
doc.Root.Add(orderedScoreElements);

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...