【发布时间】:2018-02-21 19:10:55
【问题描述】:
我需要将 Linq 查询转换为 Dynamic Linq,但 OrderBy 部分有问题。
这是 Linq 查询:
var q = from pp in ctx.MyEntity
join c in sortedListString on pp.CountryId.ToString() equals c.Substring(9)
orderby c ascending
select pp;
如您所见,我正在按连接中的实体进行排序。
现在我需要使用动态 linq 编写相同的查询,并且我有:
var q = from pp in ctx.MyEntity
select pp;
q = q.Join(
sortedListString,
o => o.CountryId.ToString(),
i => i.Substring(9), (o, i) => o
).OrderBy(???);
知道我想通过sortedListString 订购,我应该在 OrderBy 中输入什么?
【问题讨论】:
-
看不到
sortedListString -
您只返回
o,所以sortedListString没有任何东西可供订购。 -
我个人更喜欢使用 LINQ 声明式查询语法,因为它更简单易读
-
sortedListString 只是一个 List
。这是一种棘手的,不那么干净的黑客,我在这里做的如此赤裸裸:)
标签: c# linq entity-framework-6