2011-02-02 17 views
4

2つのselectステートメントでSPから2つのオブジェクトリストを取得する方法が見つかりませんでした。 BLToolkitを使用することは可能ですか、そうした方法で階層データのみを取得できますか?BLToolkit:複数の結果セット?

関連のない2つのテーブルを含むデータセットを置き換えようとしています。

答えて

4

本当にシンプルだった。 :)

ここでは、BLToolkitを使用して無関係な複数の結果セットを返す方法について説明します。

List<Apple> apples = new List<Apple>(); 
List<Orange> oranges = new List<Orange>(); 

MapResultSet[] sets = new MapResultSet[2]; 
sets[0] = new MapResultSet(typeof(Apple), apples); 
sets[1] = new MapResultSet(typeof(Orange), oranges); //Make sure both lists are added 

//Skip adding relations 

using (DbManager db = new DbManager()) 
{ 
    db 
     .SetSpCommand("usp_Fruit_GetBySomething", 
      db.Parameter("someParam", someParam)) 
     .ExecuteResultSet(sets); 
} 

foreach(Apple apple in apples) 
{ 
    profit(apple); 
} 

foreach(Orange orange in oranges) 
{ 
    profit(orange); 
} 
+0

テーブルはどのように関連していますか?私は同様のシナリオを持ち、いくつかのテーブルから複数の結果を取り出す計画をしています。これは、平坦化されたxmlを保持します。それらが関連している場合、どうやって更新していますか? –

+0

@scope_creepこの場合、テーブルはまったく関連していませんでした。 –

+0

@scope_creep私は、ストアドプロシージャを使用して、ある時点でオブジェクトを更新しています。必要に応じてループします。 –