我有一个Linq Query,它变成了一个名为"ticket query"的列表我想在工单查询中搜索具有特定数据的所有记录
我尝试使用FindAll()
但它给了我一个错误
参数匹配参数"match"无法从 'VB$AnonymousDelegate_1(of JobPartForm,Nullable(Of Boolean))' to '谓词(JobPartForm)'。
我无法直接在查询中执行查找所有操作,因为它是在单独的时间调用的
有没有其他方法可以做到这一点,或者我使用的是查找所有错误?
ticketquery = (From ticket In dbContext.JobPartForm
Select ticket).ToList()
Dim formticket = ticketquery.FindAll(Function(f As JobPartForm) f.JobNum = ticketnum And f.FormNumber = formnum)
IQueryable<TSource>.Where
方法执行相同的操作:
Dim formticket=dbContext.JobPartForm.Where((Function(f As JobPartForm) f.JobNum = ticketnum And f.FormNumber = formnum)).ToList();
第一件事是尽量不要从DbSet
调用ToList
扩展方法,这会将整个表加载到内存中,效率非常低,而且当您可以在服务器端过滤数据时会更多。