我想用Linq查询如下:
Public Sub sortquery(ByVal sortExp As String, ByVal sortDir As String)
Dim datestart As DateTime = Convert.ToDateTime("01/01/2014")
_availableActions = (From x In _Context.Actions Where x.dateDay >= datestart Order By sortExp).ToList()
问题在于Order By sortExp。 sortExp以字符串形式传入。该字符串实际上是一个实际的列名,但只是被调用到sub中。我只是不确定如何使用字符串(或如何将字符串转换为相应的列名称)进行排序。
答案 0 :(得分:0)
我认为之前的问题可能会解决您的问题。
https://stackoverflow.com/a/233505/1720848
如果您使用Marc的ApplyOrder实现,那么您将能够执行以下操作:
_availableActions = (From x In _Context.Actions Where x.dateDay >= datestart).OrderBy(sortExp).ToList()