Я пытаюсь предоставить пользователю список элементов в таблице базы данных при вводе ключевых слов в текстовое поле. В настоящее время проблема заключается в том, что пользователь может ввести несколько ключевых слов, и я хотел бы иметь возможность выполнять только одну обратную пересылку в базу данных и возвращать сопоставления результатов нескольким ключевым словам (операция ИЛИ). Есть ли способ выполнить такую задачу без необходимости попадания в базу данных для каждого ключевого слова?«Where In» с linq to sql
0
A
ответ
1
Я нашел post, которые предлагают довольно хорошее решение того, чего я пытался достичь. Спасибо за помощь!
0
Я нашел this page очень полезно при попытке выяснить, LINQ
материал в C#. Он предлагает the following syntax:
var results = from Item i in myCollectionOfItems
where i.OneThing = aGoodThing || i.SomeStuff != theBadStuff
select i;
EDIT: К сожалению, не поняли вопрос - я обновил, чтобы соответствовать запрос на OR
операции. (Я не мог найти ||
синтаксис на странице ссылок, но я предполагаю, что это будет работать. Это compiles on my machine ...
5
Содержит() является вашим другом.
List<string> keywords = new List<string>();
keywords.Add("foo");
keywords.Add("bar");
var results = from item in db.Table
where keywords.Contains(item.Description)
select item;
... дает
WHERE [t0].[Description] IN (@p0, @p1)
0
разметить ваш выход для ваших ключевых слов поиска.
Вы можете просто продолжать говорить или в C# (оператор ||) в где условия.
т.е.
var query = from row in mytable
where (row.column == a) || (row.column == b) || //.... etc
select row
0
Вы могли бы попробовать, что:
List<string> keywords = new List<string>();
keywords.Add("foo");
keywords.Add("bar");
var results = from item in db.Table
where keywords.Exists(k => item.Description.Contains(k))
select item;
Но я не уверен, что будет конвертировать в SQL ...
Смежные вопросы
- 1. LINQ to SQL WHERE "IN"
- 2. Вложенный запрос WHERE IN SQL to LINQ
- 3. Linq To Entities bad SQL casting in where where
- 4. LINQ-to-SQL IN()
- 5. Linq-to-sql join/where?
- 6. C# LINQ to SQL dynamic where where
- 7. LINQ to SQL - выберите SUM с WHERE
- 8. Динамический «WHERE IN» на IQueryable (linq to SQL)
- 9. LINQ to XML - Where where
- 10. Оператор Linq To Sql 'Where Or'
- 11. linq to sql where clause и counting
- 12. LINQ to SQL - предложение WHERE отфильтровано
- 13. Unpassable Where Clauses LINQ-to-SQL
- 14. LINQ to SQL Where Clause Необязательные критерии
- 15. LINQ to SQL - Group By/Where
- 16. Linq to SQL Join и Where
- 17. Запрос LINQ Подобно SQL WHERE x IN
- 18. Создание динамического предложения where, Linq To Sql
- 19. Преобразование запросов SQL «WHERE IN» в LINQ
- 20. SQL Select Where In преобразован в Linq
- 21. SQL to LINQ Conversion in C#
- 22. LINQ to CRM - ИЛИ в Where where
- 23. Linq to Entity Dynamic where where
- 24. Linq to Sql имеет значение null в Where where
- 25. Linq to SQL - Как сравнить с коллекцией в разделе where?
- 26. Quotes escape in Where в LINQ to Entites
- 27. LINQ to nHibernate - перевод SQL «NOT IN» выражение LINQ
- 28. Nullable DateTime in Where Where in EF Linq Query
- 29. Linq to SQL where предложение с varchar как xml
- 30. Linq pass null to Where where
Это не сработает, если вы хотите узнать, содержит ли описание ключевое слово ... –
Я хотел бы иметь что-то в строке подсказки google. ключевое слово не должно быть идеальным совпадением – ak3nat0n