- - PR -
LINQでLISTを使用した比較
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2008-08-26 15:11
お世話になっております。
悩んでいるのでご存知の方がいらっしゃいましたらご教授願います。 やりたいことは、hogeAとhogeBが同じデータを抽出するというものです。 言葉だと上手く説明できないので例を挙げます。 EX)hogeAとhogeBが1,1、2,2のものを抽出したい hogeA|hogeB|hogeC 1|1|aaaaa 1|2|bbbbb 2|1|ccccc 2|2|ddddd 期待する結果は、 hogeA|hogeB|hogeC 1|1|aaaaa 2|2|ddddd です。 項目がひとつの場合であれば、List型の変数に条件を格納して var hoge = from hh in hogeT where hogeAList.Contains(hh.hogeA) select hh という形で取得ができるかと思うのですが... 補足として、例では1,1、2,2としましたが、実際は可変長です。 ※2次元配列を使えばいいのか、LISTを使えばいいのかも分からない状態です...。 |
|
投稿日時: 2008-08-26 16:17
自己レスです。
2つの項目を結合して、List<string>を使用して解決しました。 EX) List<string> hogeAList = new List<string>(); hogeList.Add("1".PadLeft(5,'0') + "1".PadLeft(2,'0')); ・・・(略)・・・ var hoge = from hh in hogeT where hogeAList.Contains(hh.hogeA.ToString().PadLeft(5,'0') + hh.HogeB.ToString().PadLeft(2,'0')) select hh |
1