次の 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
でもエレガンスじゃない