1
找不到這個通過Google或在SO問題...LINQ查詢按過濾方式選中項目在複選框列表
我有一個複選框列表框在我的表單。我想從列表框中篩選出我所選擇的列表中的列表,這些列表被選中,在SQL中,我會這樣做:「Where TypeId In(1,4,5,7)」...我該怎麼做LINQ?
我覺得我錯過了一個非常明顯的答案,但無法得到它。
爲了討論的緣故......這裏是我有什麼對樣本數據:
In Colors (List<of currentColors>)
ID, Name, TypeId
1, Red, 1
2, Blue, 1
3, Green, 2
4, Pink, 3
選定類型2和3的CheckBoxList:filteredColors
filteredResults = (From C In WorkItemMonitor Where ????).ToList()
在filteredResults
預計項目將是: [3,Green,2],[4,Pink,3]
編輯: 我的當前查詢..(對不起被告知這將是一個列表,原來是一個DataTable我過濾)
Dim workItemsListing As DataTable
workItemsListing = (From L In WorkItemMonitor.AsEnumerable() _
Where clbStatus.CheckedItems.Contains(L.Item("CurrentStatusId"))).CopyToDataTable()
這是如何知道我選擇了什麼? – RiddlerDev
更多信息,抱歉,剛剛得到了更改,因爲我正在處理這個問題...我認爲它很接近,但我得到的「源代碼不包含DataRows」,儘管兩個對象都包含項目。這是因爲我需要將CheckedItems集合轉換爲數據表? – RiddlerDev
clbStatus.CheckedItems中的值的類型是什麼? 'clbStatus.CheckedItems(0).GetType()'你需要將它轉換爲該類型。 –