Nur*_*MAZ 5 linq linq-to-sql entity-framework-4.1
我应该根据孩子的领域对父母进行排序.
示例代码;
IQueryable<Parent> data = context.Parents.Include(o=>o.Children);
Run Code Online (Sandbox Code Playgroud)
// Child有一个成员(字符串)名称.
问题:我如何按子名称排序父母.
Yak*_*ych 32
您的问题有些令人困惑,因为首先,它使用Entity Framework和LINQ-to-SQL进行标记.你实际使用哪种ORM?
其次,更重要的是,你说你想要"sort Parent by Children Names".您想要按哪个子名称排序?你一定要明白,你不能一个比较列表名称到另一个列表名称,并决定哪些人应该先于另一个来了吗?
因此,如果我假设您想要按照字典顺序排列的子名称进行排序,那么您的解决方案将是以下(@Paul在此处关闭,但您需要指定要排序的属性):
context.
Parents.
OrderBy(p => p.
Children.
OrderBy(c => c.Name).Select(c => c.Name).FirstOrDefault()
);
Run Code Online (Sandbox Code Playgroud)
在这种情况下,请考虑以下设置.父母PA有孩子CB,CD而父母PB有孩子CC和孩子CA.作为排序的结果,父级PB将首先出现在排序列表中,因为子级CA将被用作"主要"子级PB,而CB将是"主要"子级PA.如果这不是您正在寻找的行为,请提供示例和更清晰的说明.
你可以取其中一个孩子的名字来排序,大概通过做相应的排序来选择它?
就像是:
IQueryable<Parent> data = context.Parents.OrderBy(
p=>p.Children.OrderBy(chi => chi.Name).FirstOrDefault());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14061 次 |
| 最近记录: |