1
Googleまたはその他の質問を通じて見つからなかった...LINQチェックボックスリストの選択項目によるフィルタの照会
私のフォームにチェックボックスのリストボックスがあります。私はチェックされているそのリストボックスから選択されたIDのリストによって私のリストをフィルタリングしたいと思う、SQLでは "Where TypeId In(1、4、5、7)"のようにしていただろう... LINQ?
私は本当に明白な答えを見逃しているように感じますが、それを得ることはできません。
引数便宜上...ここで私は、サンプルデータのために持っているもの:CheckBoxListの中
In Colors (List<of currentColors>)
ID, Name, TypeId
1, Red, 1
2, Blue, 1
3, Green, 2
4, Pink, 3
選択されたタイプ2と3:filteredColors
filteredResults = (From C In WorkItemMonitor Where ????).ToList()
filteredResultsで
期待のアイテムは、次のようになります。 [3、緑、2]、[4、ピンク、3]
編集: 私の現在のクエリ..申し訳ありませんでしたが、私はあなたの説明にできる最善のことだ、私はフィルタリングしていたDataTable)
Dim workItemsListing As DataTable
workItemsListing = (From L In WorkItemMonitor.AsEnumerable() _
Where clbStatus.CheckedItems.Contains(L.Item("CurrentStatusId"))).CopyToDataTable()
私はそれをどのようにして知っていますか? – RiddlerDev
詳細については、残念ながら私はこれに取り組んでいたときに変更を加えました...私はそれが近いと思いますが、両方のオブジェクトにアイテムがありますが、 "ソースにはDataRowが含まれていません"これは、CheckedItemsコレクションをデータテーブルにキャストする必要があるためですか? – RiddlerDev
clbStatus.CheckedItemsの値のタイプは何ですか? 'clbStatus.CheckedItems(0).GetType()'それをその型にキャストする必要があります。 –