如何在通配符中構建我的LINQ To SQL lambda表達式?LINQ to SQL通配符
這是我目前:
var query = from log in context.Logs select log;
foreach (string filter in CustomReport.ExtColsToFilter)
{
string tempFilter = filter;
query = query.Where(Log => Log.FormattedMessage.Contains(tempFilter));
}
,直到我嘗試和過濾字符串中傳遞通配符這工作得很好了。我正在試驗SqlMethods.Like()
,但無濟於事。
上面的過濾器看起來像這樣:"<key>NID</key><value>mcass</value>"
。
我希望能夠通過過濾器這樣的:"<key>NID</key><value>%m%</value>"
'SqlMethods.Like'應該可以工作。當你嘗試時結果是什麼? – Thorarin 2010-06-08 18:36:14
@ Thorarin生成的SQL與.Contains()SQL相同。也許我需要更多地關注嵌入通配符? – mcass20 2010-06-08 18:45:26
只是要清楚,你是否通過'' NID %m% 「'到'SqlMethods.Like'並仍然得到與沒有'%'通配符時相同的結果? –
2010-06-08 19:01:16