xml - 如何按属性值对 LINQ C# 中的 XML 进行排序?还有MVC

标签 xml asp.net-mvc linq sorting

(使用最新的 MVC 2 RC 2)我正在尝试通过元素的属性值对 LINQ (C#) 中的一些 XML 进行排序...

var sites = from s in xDoc.Element("sites").Elements("site")
orderby s.Attribute("name")
select s;

但是当我将它传递给我的 View 时,我得到了异常:

Exception Details: System.ArgumentException: At least one object must implement IComparable.
Source Error: 
Line 37:                </th>
Line 38:            </tr>
Line 39:            <% foreach (var item in Model)
Line 40:               { %>
Line 41:            <tr>

谁能告诉我如何使用 LINQ 对 XML 进行排序并使其正确呈现?

最佳答案

编辑:好的,我想你只是想:

var sites = from s in xDoc.Element("sites").Elements("site")
            orderby (string) s.Attribute("name")
            select s;

也可以写成:

var sites = xDoc.Element("sites")
                .Elements("site")
                .OrderBy(s => (string) s.Attribute("name"));

关于xml - 如何按属性值对 LINQ C# 中的 XML 进行排序?还有MVC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2208844/

相关文章:

asp.net-mvc - 所有请求均收到HTTP错误401.2-未经授权的响应

c# - 加速我的简单 Redis .NET 应用程序

android - 底部的选项卡,顶部的 map View

xml - 使用Powershell检索xml值

xml - targetNamespace 和 xmlns 没有前缀,有什么区别?

javascript - 如何使用 JS 函数在我的 View 中显示 ViewBag 的值?

javascript - 将 resx 编译为 Javascript

linq - t4 模板 linq 问题

Linq 到实体、每种类型的表和可空外键关系

java - @XmlElements 标有@XmlJavaTypeAdapters?