根据 List(Of Guid) 里的项来查找多个记录的 Linq 写法
数据里面的一个表,有 ID 字段,类型为 GUID。
程序里面传入一个包含多个 ID 的 List(Of Guid),要查询出来这些 ID 的记录。
刚开始写:
Public Shared Function Query(ids As List(Of Guid)) As DemoItem DemoTableEntities.Where(Function(x) ids.IndexOf(x.ID) >= 0).ToList() End Function
Public Shared Function Query(ids As List(Of Guid)) As DemoItem DemoTableEntities.Where("it.ID = {0} Or it.ID = {1} Or it.ID = {2} ... ", ids.ToArray).ToList() End Function '其中 it.ID = {0} Or it.ID = {1} Or it.ID = {2} ... 这句是 ids 循环动态生成的字符串 Public Shared Function Query(ids As List(Of Guid)) As DemoItem DemoTableEntities.Where("it.ID = {0}", ids(0)).ToList() End FunctionPublic Shared Function Query(ids As List(Of Guid)) As DemoItem DemoTableEntities.Where(Function(x) ids.Contains(x.ID)).ToList() End Function