簡體   English   中英

LINQ - 將具有多個條目的搜索詞與具有多個條目的另一個字符串進行比較

[英]LINQ - Comparing a search term with multiple entries against another string with multiple entries

我在數據庫中有一個名為 Title 的列。

我有一個來自應用程序的搜索詞。

到目前為止我所做的是:

var valsSearch = value.searchTerm.ToLower().Split(" ");
var results = ctx.Links.Select(x =>x.Title).Where(x => valsSearch.Contains(x)).ToList();

例如,數據庫中的標題可能是“Ronaldo scores a hattrick”,搜索詞可能是“scores ronaldo”

將數據庫中的標題與搜索詞進行比較時如何過濾結果?

結果應該是 searchTerm 在分開時用於過濾 Title DB 中的值,如果匹配則返回結果。

嘗試這個,

var valsSearch = value.searchTerm.ToLower().Split(" ");
var results = ctx.Links.AsEnumerable().Where(x => valsSearch.Any(y => x.Title.ToLower().Contains(y))).ToList();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM