我需要将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;
正如你所看到的,我是按照联合中的entinty进行排序的 现在我需要编写相同的查询,但使用动态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(???);
我应该在OrderBy中加入什么,知道我想通过sortedListString
订购?
答案 0 :(得分:1)
这里不确定“动态linq”是什么意思,但使用“完整”LINQ语法相当于你的查询:
var q = ctx.MyEntity
.Join(sortedListString,
pp => pp.CountryId.ToString(),
c => c.Substring(9),
(pp, c) => new { pp, c })
.OrderBy(t => t.c)
.Select(t => t.pp);