1

複雑なクエリに基づいてレコードセット(結果セットA)を返すストアドプロシージャがあり、レコードは特定の順序になっています。別のテーブル(結果セットB)からID値を返す別のクエリがあります。

「idが存在する結果セットA(結果セットB)からレコードを取得する」のようなことをしたい。

これはコードビハインドで行う必要があります。これを行う方法について何かアイデアはありますか?

4

1 に答える 1

1

この拡張メソッドを使用できます-収量に基づいてLinq Contains operator

public static IEnumerable<string> Select(this DataReader reader, int index)
{
    while (reader.Read())
    {
        yield return reader[index].ToString();
    }
}

注: 2 つのレコードセット Reader1 と Reader2 があります。拡張メソッドを選択して、項目 IEnumerable のリストを取得します。

var list1 = reader1.Select(0); //Search on first column;
var list2 = reader2.Select(0);
//Get list items of values (index 0) of list2, who exist in list1.
var result = from item on list2.Select(0)
             where list1.Contains(item)
             select item;
于 2012-10-12T12:20:32.857 に答える