Code: Select all
var users = db.Users.AsQueryable();
var parts = keyword.Split(new [] {" "}, StringSplitOptions.RemoveEmptyEntries);
foreach (var part in parts)
users = ordered_users.Where(u => u.UserName.Contains(part) || u.UserSurname.Contains(part));
Code: Select all
SELECT .....
FROM public.users t1
WHERE ....
AND ((LOWER(t1.user_name) LIKE :p1) OR (LOWER(t1.user_surname) LIKE :p2))
AND ((LOWER(t1.user_name) LIKE :p3) OR (LOWER(t1.user_surname) LIKE :p4))
ORDER BY t1.user_id
[p1 = surname]
[p2 = surname]
[p3 = surname]
[p4 = surname]
while expecting
[p1 = name]
[p2 = name]
[p3 = surname]
[p4 = surname]