То, как использовать, “содержит” или “как” в динамическом запросе linq?

Справочный файл, который шел с Динамическим Linq в CSharpSamples.zip, не показывает, что любые примеры использования содержат или как.

Есть ли какие-либо простые обходные решения для того, чтобы сделать это? т.е. где (седло как @col) не работает.

36
задан Curtis White 16 March 2010 в 15:27
поделиться

2 ответа

Вот ответ! Dynamic Linq поддерживает. оператор,

Согласно документам:

«Доступ к полю экземпляра или свойству экземпляра . Доступен доступ к любому общедоступному полю или свойству ».

Таким образом, можно используйте этот синтаксис

.Where("MyColumn.Contains(@0)", myArray)

Спасибо за все предложения! И спасибо мне за то, что нашел решение.

61
ответ дан 27 November 2019 в 05:40
поделиться

На самом деле существует прямая поддержка подобного оператора в Linq2Sql:

db.MyTable.Where(a => SqlMethods.Like(a.Name, "%"+searchTerm+"%"))

См. Здесь:

http://msdn.microsoft.com/en-us/library/system.data .linq.sqlclient.sqlmethods_members.aspx

... но я предпочитаю использовать startWith, endWith и contains для большинства приложений.

4
ответ дан 27 November 2019 в 05:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: