我有一個記錄數據庫,每個記錄都有一個標題。我想用搜索字符串搜索這個數據庫,搜索字符串將被分成一個列表或一個數組。實體框架搜索記錄與字符串列表?
因此,例如,如果我使用「Book Dog」進行搜索,它將搜索標題中包含「Book」或「Dog」的所有標題。
我使用實體框架,我想寫下我想要做的是
string[] words;
var posts = (from p in ctx.posts
where p.title.contains(words)
select p).ToList();
我使用StringExtension我在網上找到試過最簡單的方法,但我會得到下面的錯誤 「LINQ to Entities無法識別方法'布爾ContainsAny(System.String,System.String [])'方法,並且此方法不能轉換爲存儲表達式。」
並且該擴展是
public static bool ContainsAny(this string str, params string[] values)
{
if (!string.IsNullOrEmpty(str) || values.Length > 0)
{
foreach (string value in values)
{
if (str.Contains(value))
return true;
}
}
return false;
}
作品!謝謝! – SikhWarrior 2013-04-27 00:00:41