2009-07-06 12 views
0

私はBusiness Objects Collectionsを使用しています。
ビジネスオブジェクトの(データセットを使用していない。ジェネリックコレクションをのみ。)
コレクションは、SQLリーダーオブジェクトを塗りつぶす方法master - datailコレクションC#/ SQL2005

を用いて充填されている私は、マスターの詳細(または親子を)埋めるための最良の方法は何かあなたの意見を知りたいのですが、コレクション

は、私は2つのオブジェクトがあるとします。請求書とInvoice_Details
請求書オブジェクトは、ジェネリックコレクション「詳細」を持っている(請求書の詳細の種類)

動作するように最善のアプローチがどうなるか/両方のコレクションを埋めますか?
(例:私はGUI上で2008年と現在のすべての請求書を読みたい)

  • あなたはすべての子供たちよりも、選択した期間のすべての請求書を読み、適切な請求書の詳細
  • を移入または請求書を読んでください1つ1つ関連する詳細情報(例えば乗算結果セットを使用して)
  • 私もソースバインディングに基づいたアプローチを気づいた - >現在のレコードの位置を変更する場合にのみ、私は最高になるか、あなたの意見は非常に興味が

...子供を読みます/最速のシナリオ?

+0

私のアプリのGUIは、親データグリッドがフォームの上部にあり、子が同じフォームの下部にあるように投影されていました。したがって、そこには「プレビューの詳細」ボタンがなく、簡単なイベントが子レコードをロードするために使用できるものを起動しました。 それが必要なときに読み込むようにコードする方法は? – Maciej

答えて

0

これは、あなたが何をしようとしているかによって異なります。

請求書が必要なときはいつでもすべての請求書の詳細が必要な場合は、最初に請求書にアクセスしたときに詳細を照会します(必要な場合は、 2つの結果セット)。

他のケースにも同様のパターンが適用されます。

0

影響を最小限に抑えるため、請求書レコードを一度に読み込み、必要なときにのみInvoice_Detailsを読み込みます。これにより、インボイスデータのすべてをロードする最も速い方法でありながら、メモリ使用量が最も少ないという利点があります。

関連する問題