任何人都可以在我們的應用程序的「搜索」功能中幫助我解決問題,其中他們喜歡對這兩個示例單詞具有相同的結果,即玩具和玩具。在搜索引擎中搜索單數和複數的單詞
因此,舉例來說,如果他們搜索「玩具」,那麼應用程序應返回,在具有「玩具」或「玩具」「玩具」,反之亦然所有數據。
我已經使用。載有()在LINQ,因爲這是實現這一結果的最佳方式,但是當我檢查「玩具」它搜索「玩具」和「玩具」和然後當我搜索「玩具」只搜索「玩具」,並沒有「玩具」
這裏是我的示例代碼:
context.CapabilityHasMethodHasSubstances
.Where(c => c.Substance.SubstanceLocale.Where(x => x.LocaleId == 2057).FirstOrDefault()
.Description.Contains(filter) && !c.IsDeleted)
.Select(c => c.CapabilityId).ToList()
在此先感謝有人可以幫我解決我的問題。 :)
進出口猜測改變tofrom .Contains(過濾器)。(包含(過濾器)|| .contains(過濾器「+ s」)),是的,這將使羊羊,但你應該沒有羊 – BugFinder
ahmm,但你認爲這裏有一個問題,當你的搜索關鍵字實際上有「S」在最後,像例如「新聞」,那麼這將在代碼中增加另一個「s」基礎?或者我們最後要刪除「s」,但現在的問題將是「新聞」與「新」不同的結果。再次感謝。 – g0y
您可以使用像[Humanizer](https://github.com/Humanizr/Humanizer)這樣的庫複數化/單化 –