我有一个 1 : M 的关系。
我根据用户的输入构建了一个动态查询,以返回父实体及其子实体的列表(使用谓词构建器:
(成功完成 new TDataContext().Ps.Where(predicate) )...
但需要按仅在子实体上找到的字段对结果进行排序。
我不知所措: new TDataContext().Ps.Where(predicate).OrderBy(p => p.Cs. ??)
其中 Ps = 与 Cs = 子实体的父集合关系
任何帮助表示赞赏。
我有一个 1 : M 的关系。
我根据用户的输入构建了一个动态查询,以返回父实体及其子实体的列表(使用谓词构建器:
(成功完成 new TDataContext().Ps.Where(predicate) )...
但需要按仅在子实体上找到的字段对结果进行排序。
我不知所措: new TDataContext().Ps.Where(predicate).OrderBy(p => p.Cs. ??)
其中 Ps = 与 Cs = 子实体的父集合关系
任何帮助表示赞赏。
一种方法是先选择孩子:
new TDataContext().Ps.Where(predicate).SelectMany(p=>p.Cs).OrderBy(q => q.Name);
尝试这样的事情:
new TDataContext().Ps.Where(predicate).OrderBy((<datatype of p> p) => p.Cs.Name)
您必须将“<datatype of p>”替换为任何内容。此外,您必须将“名称”替换为您想要排序的任何字段。