摘要:LINQ中使用LIKE
情境模擬
string s = " 11,3,4,8,9,25,77 ";
string key = "1";
現在若是想要搜尋key是否在裡面 使用 s.contains(key) 會被翻譯成 like '%1%'
因此 11符合這個條件 因此這個字串會被判斷成TRUE,這不是我們要的
因此可以使用 StartsWith EndsWith 與 contains 來搭配使用
考慮這個狀況來思考1擺在字串前頭(1,) 中間(,1,) 與 後面的狀態(,1) 這三種狀態都不會跟其他數字重複
StartsWith("1,") 會被翻譯成 like '1,%'
EndWith(",1") 會被翻譯成 like '%,1'
結果
s.StartsWith("1,") || s.contains(",1,") || s.EndWith(",1")