【问题标题】:How would I do Subsequent sort on a child table in asp.net mvc2 using Entity Framework我将如何使用实体框架对 asp.net mvc 中的子表进行后续排序
【发布时间】:2010-09-25 00:46:05
【问题描述】:

我正在尝试做这样的事情:

 ViewData.Model = _db.Questions  
                     .Include("QType")  
                     .Include("QTags")  
                     .Include("SubQuestions.Options")  
                     .Where(q => q.Active == true)  
                     .Orderby(q => Questions.Order)  
                     .Orderby(sq => SubQuestions.Order)  
                     .ToList(); 

但当然它并没有像我想要的那样工作。订购适用于Question.Order,但我也会根据SubQuestions.Order 订购Questions.SubQuestions 列表。

任何人都可以帮助我解决任何明显的错误吗?

谢谢

【问题讨论】:

    标签: .net linq entity-framework sorting asp.net-mvc-2


    【解决方案1】:

    您的代码准确吗?看起来您在 order by 子句中没有使用 qsq。我很确定您的问题是您的 second 顺序应该替换为 ThenBy 运算符。

    【讨论】:

    • 嗨,柯克,我也试过这个: .Thenby(q => q.SubQuestions.Orderby(sq => sq.SQOrder) ) ,但这也不起作用。你能提供任何提示/指点吗?
    • @Priyeshj,您正在返回一系列问题。每个问题都可以有 许多 个子问题,对吗?返回问题结果时,对子问题表上的列进行排序是什么意思?换句话说,如果每个问题都可以有多个子问题,那么在返回顶级问题时按这些子问题排序是没有意义的。也许您想要子问题的 MAX Order 值?您能否展示一些描述您期望结果的示例数据?
    • 我猜你可能是对的。我最终为关系创建了一个单独的视图模型,然后在视图而不是模型/控制器中动态排序。所以没有更多的.Thenby(...)。糟糕的实施,但有效。谢谢你的线索。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多