在下面的 LINQ 查询中,我想当 Loc=Locale.Gr 时返回 GrID=100 的所有记录,而当 Loc 是其他所有记录时,返回 GrID <> 100 的所有其他记录。
我怎样才能实现这一目标?我尝试了以下类似的方法,但这是完全错误的。
PrivateSub Test(Byval Loc as Locale)
Private Const GrID as integer = 100
Dim Query = From c In Mob Where c.CountryID = IIf(Loc = Locale.Gr, GrID, <> GrID) select c
End Sub
更新:
当然我可以使用类似的东西
If Loc = Locale.Gr Then
Query = From c In Mob Where c.CountryID = GrID
Else
Query = From c In Mob Where Not c.CountryID = GrID
End If
但这不是优雅的