实体框架以子列排序顺序加载所有数据

时间:2014-11-25 15:28:37

标签: mysql entity-framework asp.net-mvc-4

我首先使用MVC4和实体框架数据库(EF5)。 我有两张桌子' Items'是主表和' ItemDetails'是奴隶。我想在单个视图中获取并显示两个表的数据,但是按列排序所有数据' Number'这是来自奴隶表的列' ItemDetails' 。 我正在获取数据但无法通过“数字”排序数据。 请为此案例建议任何疑问。

2 个答案:

答案 0 :(得分:1)

ItemItemDetails之间的关系是一对一的吗?如果是这样,你可以这样做:

db.Items.OrderBy(o => o.ItemDetails.Number);

如果没有,您需要使用MinMax这样的汇总,因为您无法按照一系列事项排序:

db.Items.OrderBy(o => o.ItemDetails.Min(m => m.Number))

或者

db.Items.OrderByDescending(o => o.ItemDetails.Max(m => m.Number))

取决于您想要的方向性。

答案 1 :(得分:0)

查看如何制作OrderBy

的示例
var Query = from category in categories
            join product in products on category.ID equals product.CategoryID 
            orderby product.CategoryID
            select new { Category = product.CategoryID, ProductName = product.Name };

我也留下this link作为例子。