在C#中按分组前排序项目

时间:2013-12-12 06:57:42

标签: c# asp.net-mvc

我正在尝试以分页方式显示我的项目。 第一部分是通过对它们进行分组而发生的,我不知道如何对它们进行排序。 代码Item.page中包含每个项目页码,Item.priority包含 物品的顺序。 现在我怎样才能按顺序排序?

这是我的代码:

"@model IEnumerable<MyProgram.Models.Question>" 

foreach (var group in Model.GroupBy((item => item.Page)))
        {

        <fieldset>

         <legend></legend>
       @{
            foreach (var item in group)
            {

                if (item.Type == "label")
                {

我厌倦了这一点,但在item.之后没有出现任何事情:

foreach (var group in Model.GroupBy((item => item.Page)).OrderBy(item => item.))

2 个答案:

答案 0 :(得分:1)

这应该有效:

Model.GroupBy(item=>item.page)
    .Select(group=>group.OrderBy(I=>I.priority))

您需要订购每个组而不是整个分组的可枚举组。

答案 1 :(得分:0)

尝试第二个foreach

foreach (var item in group.OrderBy(i => i.priority))

如果您的唯一目标是通过两个或更多参数实现排序,请使用OrderBy(...).ThenBy(...)