我有一個LINQ查詢。我只是Linq的初學者。我想用它來自動完成。我需要將輸入與字符串中單詞的起始字符進行匹配。考慮這種情況。字符串的將字符串列表中的單詞的第一個字符與Linq匹配
列表
1. London Corporation
2. Financial Services Industry
3. European Union Countries.
4. Derivative Securities
在上述列表中,當用戶按下字符「C」則該查詢應返回的值1和3中的單詞的字符串匹配的字符「C」 。如果輸入是'S',那麼結果應該是2和4.
我試過了下面的一個。但不知道我該如何繼續下一步。請任何人告訴我如何分割一個字符串中的單詞並匹配輸入字符。我嘗試了下面的代碼。
CODE
var model = (from line in db.BibContents
where line.TagNo == "020" && line.Sfld == "a" && line.Value.Split(' ').StartsWith(Val)
select new PoDetails
{
BibId = line.BibId
}).ToList();
感謝,
是的,但顯示的錯誤是這樣的:LINQ到實體無法識別方法「System.String [] Split(Char [])'方法,並且此方法不能轉換爲商店表達式。 – Dheyv
嘗試使用'line.Value.ToString().Split('').Any(x => x.StartsWith(Val))'(抱歉 - 如果沒有前面的代碼,這很難調試)。如果失敗,請參閱http://stackoverflow.com/questions/8653200/split-string-with-linq –
P.S.你可以隨時調試你的Fluent API chans,就像'var part1 = line.Value.Split('');'然後'var part2 = part1.Any(x => x.StartsWith(Val));''並使用具有斷點的'F10'來在它們之間進行切換。 –