LINQ排序依据排序问题

时间:2011-03-30 20:58:05

标签: vb.net linq

我有一个LINQ查询:

bikersList = (From c In ngBikersDataContext.Reg_Bikers _
              Order By c.L_Name _
              Select New Bikers() With { _
                  .BikerID = c.BikerID, _
                  .F_Name = c.F_Name, _
                  .M_Name = c.M_Name, _
                  .L_Name = c.L_Name, _
                  .MyID = c.MyID, _
                  .Site = c.Site.GetValueOrDefault, _
                  .bk_Building = c.bk_Building, _
                  .bk_City = c.bk_City, _
                  .bk_Zip = c.bk_Zip.GetValueOrDefault, _
                  .bk_Phone = c.bk_phone, _
                  .email = c.email, _
                  .DeptZone = c.DeptZone, _
                  .QuartID = c.QuartID.GetValueOrDefault, _
                  .BikerDays = c.BikerDays.GetValueOrDefault, _
                  .BikerMiles = c.BikerMiles.GetValueOrDefault, _
                  .BikerTime = c.BikerTime.GetValueOrDefault, _
                  .BKLockID = c.BKLockID.GetValueOrDefault, _
                  .bk_Start_DT = c.bk_Start_DT, _
                  .bk_End_DT = c.bk_End_DT, _
                  .bk_Quarter = c.bk_Quarter.GetValueOrDefault, _
                  .bk_Year = c.bk_Year.GetValueOrDefault, _
                  .bk_Comments = c.bk_Comments, _
                  .IsActive = c.IsActive.GetValueOrDefault _
              }).ToList()

这很有效,并在L_Name上排序。但我试图让用户自己对gridview进行排序,所以我将SortExpression作为字符串传递。但我不知道如何将SortExpression合并到LINQ查询中。

我试过了Order By c. & SortExpression,但这没效果。

1 个答案:

答案 0 :(得分:1)

您可以使用System.Linq.Expressions.Expression动态构建linq表达式来完成此操作。

Here是一个解释相同

的例子