Tôi khá mới với VB.NET và có một chút rắc rối ở đây với một cái gì đó tôi nghĩ nên đơn giản.Làm cách nào để nối thêm mệnh đề 'where' bằng VB.NET và LINQ?
Giữ đơn giản, giả sử tôi có bảng Tài liệu với "Tên" mà tôi muốn tìm kiếm (trong thực tế có một số bảng khác, kết nối, v.v.). Tôi cần để có thể xây dựng truy vấn sử dụng mệnh đề where
dựa trên giá trị chuỗi được truyền.
Ví dụ - người dùng có thể chuyển vào "ABC", "ABC DEF", "ABC DEF GHI".
Truy vấn cuối cùng sẽ là (cú pháp là không đúng, tôi biết):
Select * from Documents Where Name Like %ABC% AND Name Like %DEF% AND Name like %GHI%
Vì vậy, tôi nghĩ tôi có thể làm một cái gì đó như thế này.
Dim query = From document In _context.Documents
<< loop based on number of strings passed in >>
query = query.Where(... what goes here??)
Vì lý do nào đó, bị chết não hoặc điều gì đó, tôi không thể tìm ra cách thực hiện công việc này trong VB.NET hoặc nếu tôi làm đúng.
Toán tử so sánh của VB giống với toán tử gán của nó .. vì vậy 's == "ABC"' phải là '("ABC" = s)'. Khác hơn rồi làm tốt lắm. –
Không, đó không phải LINQ, đó là một Lambda. –
Thực ra, đó là cả hai. Đây là một ví dụ về cú pháp phương pháp LINQ sử dụng một biểu thức Lamda. –