在My LINQ查詢中我使用Where子句來檢查屬性是否存在於數組數組中。我想更新查詢:使用'StartsWith'與數組進行LINQ查詢
string[] itemColour
string[] itemType
List<displayItem> displayItems = (from item in allItems
Where itemColour.Contains(item.colour)
Where itemType.Contains(item.type)
select new displayItem
......................etc...etc
所以我有什麼是
「我在哪裏‘itemColour’數組包含這個‘item.colour’中選擇」
「我在哪裏「ITEMTYPE」數組包含此「項目。形式」中選擇」
什麼我後
「我在哪裏‘itemColour’數組有一個項目‘item.colour’在任何地方選擇它
」我在哪裏‘ITEMTYPE’陣列具有與‘項目。形式’開頭的項目選擇它
我我不知道'StartsWith'和'EndsWith',但不知道如何將它們用於這些數組。
注: itemColour可能包含有顏色代碼「RGW」我希望能夠基於任何三個字母的
更新
的,選擇這一項項建議的解決方案:
var query = from item in allItems
where itemColour.Any(c => c.Contains(item.colour))
&& itemType.Any(t => t.StartsWith(item.type)
select ...;
有問題。如果我試圖帶回顏色代碼'RB'的項目。 我的數組可能包含兩個項目「R」和「B」,建議的查詢僅返回帶有顏色代碼「R」或「B」不是兩者的項目。
我使用MVC 5,LINQ到實體,.NET 4.5
感謝
謝謝任何我需要的。但是這個查詢沒有產生我期望的結果。我會編輯我的問題 – user2390419
@ user2390419:沒有任何更多的信息,我們不能幫你。你是否想'''而不是'&&'? (換句話說,你是否試圖找到匹配*要求而不是*兩者*的項目?) –
嗨,感謝您的幫助我已更新我的問題,我的問題是包含似乎不工作相同像''' – user2390419