【问题标题】:OrderBy on children in a LINQ Query [duplicate]LINQ 查询中子级的 OrderBy [重复]
【发布时间】:2011-01-10 13:12:20
【问题描述】:

可能重复:
EF4 LINQ Ordering Parent and all child collections with Eager Loading (.Include())

大家好

我有一个 user 实体,它包含与 role 实体的一对多关系

所以用这个 linq 表达式:

from user in USER_TABLE.Include("USERROLE_TABLE")
order by user.Name
select user

我可以在小时候获得具有相关角色的用户。 我的问题是我想按字母顺序获取每个用户的角色。 我怎样才能做到这一点 ?我google了很多,没有找到任何东西

提前致谢!

【问题讨论】:

  • 如果你用select user.Role替换你的选择有什么问题?

标签: linq c#-4.0 entity-framework-4


【解决方案1】:

所以,澄清一下,您有一个表格,其中主要包括:

Name : Role
--------------
Bob : leader
Jane : scribe
Bob : technician
Bob : programmer
Jane : entity
Bob : adept

你想最终得到:

Bob : adept
Bob : leader
Bob : programmer
Bob : technician
Jane : entity
Jane : scribe

如果是这种情况,那么您正在查看“orderby,thenby”,我相信在 LINQ 中,在 LINQ 语句的该部分用逗号表示:

orderby user.Name, user.Role

这就是你要找的吗?

【讨论】:

  • 不,我有两张桌子,对我有用吗?
  • 但是在包含之后,您基本上得到了一个集合,您可以随意订购。我提出的输出是否是您打算最终得到的结果 - 您希望按一个标准(名称)排序,该标准内的结果按后续标准(角色)排序?或者您是否希望最终得到一个场景,即您有一个没有重复的(用户)集合,其中每个用户都有一个主要标准(角色)字段,其中包含一个次要标准(角色)列表,包含一个到多个角色?
猜你喜欢
  • 1970-01-01
  • 2021-03-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-17
  • 2018-03-31
  • 1970-01-01
相关资源
最近更新 更多