Hi all
I have the following xml file :
<?xml version="1.0" encoding="utf-8" ?>
<root>
<persons>
<person>
<firstname>Mark</firstname>
<surname>Jones</surname>
<age>33</age>
</person>
<person>
<firstname>Adbul</firstname>
<surname>Khan</surname>
<age>30</age>
</person>
<person>
<firstname>Bob</firstname>
<surname>Smith</surname>
<age>31</age>
</person>
</persons>
</root>
I have the following expression
XElement myXml = XElement.Load("Sample.xml");
var allPersonsInOrderOfAge = from person in
myXml.Descendants("person") orderby person.Element("age") select
person;
However when I run this - I get an error saying "At least one object
must implement IComparable"
Can anyone shed any light on this? Is my expression wrong... How can I
correct this problem?
Many thanks
David R. Longnecker - 13 Mar 2008 21:25 GMT
> var allPersonsInOrderOfAge = from person in
> myXml.Descendants("person") orderby person.Element("age") select
> person;
You need to cast your person.Element("age") to a type so it knows how to
compare the elements:
var allPersonsInOrderOfAge =
from person in myXml.Descendants("person")
orderby (int)person.Element("age")
select person;
Hope this helps.
-dl
--
David R. Longnecker
http://blog.tiredstudent.com
> Hi all
>
[quoted text clipped - 35 lines]
>
> Many thanks