我有一个使用 LINQ 查询调用的表值函数。
正如我现在所理解的(如此处所引用的),排序需要在表值函数之外完成。这意味着,我必须在 LINQ 查询中执行此操作。
我需要一些语法帮助。这是我对该函数的原始调用。
var sourceQuery = (from f in db.fGameListDataTable(competitionID, eventID, participantType)
select f);
我需要从 SQL 查询中获取此自定义排序并将其添加到 LINQ 查询中。
Order By
CASE
WHEN GameType = 'G' THEN '1'
WHEN GroupNumber = '1' THEN '2'
WHEN GroupNumber = '2' THEN '3'
WHEN GroupNumber = '3' THEN '4'
WHEN GroupNumber = '4' THEN '5'
WHEN GameType = 'GT' THEN '6'
WHEN GameType = 'P' THEN '7'
WHEN GameType = 'FT' THEN '8'
END ASC,
g.GameID ASC
更新
对于视觉参考,这里是被排序的表格。注意顺序。