У меня есть запрос LINQ to ENTITY, который извлекается из таблицы, но мне нужно создать поиск типа "нечеткий". Поэтому мне нужно добавить предложение where, которое ищет по имени, если они добавят критерии в поле поиска (текстовое поле, CAN be blank --- в этом случае оно тянет ВСЕ).
Вот что я до сих пор:
var query = from mem in context.Member
orderby mem.LastName, mem.FirstName
select new
{
FirstName = mem.FirstName,
LastName = mem.LastName,
};
Это вытащит все из таблицы Member, которая находится в объекте Entity.
Тогда у меня есть дополнение к логике:
sLastName = formCollection["FuzzyLastName"].ToString();
if (!String.IsNullOrEmpty(sLastName))
query = query.Where(ln => ln.LastName.Contains(sLastName));
Проблема заключается в том, что нажата кнопка поиска, ничего не возвращается (0 результатов). Я выполнил запрос к SQL Server, который, как я ожидаю, произойдет здесь, и он возвращает 6 результатов.
Это запрос, который я ожидаю:
SELECT mem.LastName, mem.FirstName FROM Members mem WHERE mem.LastName LIKE '%xxx%'
(когда xxx вводится в текстовое поле)
Кто-нибудь видит что-то не так с этим?
EDIT: Исправлен запрос SELECT. Я имел в виду, чтобы он читал LIKE '% xxx%' (NOT = 'xxx))