0

ビジネス オブジェクト コレクションを使用しています。
(データセットは使用しません。ジェネリック コレクションのみ。)
ビジネス オブジェクトのコレクションは、SQL リーダーを使用して入力されます。

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

Invoice と Invoice_Details の 2 つのオブジェクトがあるとします。
Invoice オブジェクトには汎用コレクション「Details」(Invoice Details のタイプ) があります。

両方のコレクションを機能させる/埋めるための最良のアプローチは何ですか?
(例: 2008 年以降のすべての請求書を読み取り、GUI に表示したい)

  • すべての子よりも、選択した日付範囲のすべての請求書を読み、適切な請求書の詳細を入力しますか?
  • または、請求書と関連する詳細を 1 つずつ読みますか? (例: 乗算結果セットを使用)
  • また、バインディング ソースに基づくアプローチにも気付きました -> 現在のレコード位置を変更するときにのみ子を読み取ります...

私はあなたの意見に非常に興味があります.最高/最速のシナリオは何ですか?

4

2 に答える 2

0

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

請求書が必要なときにいつでもすべての請求書の詳細が必要な場合は、最初に請求書にアクセスするときに詳細のクエリを発行します (常に両方が必要になることがわかっている場合を除きます。その場合、2 つの結果セットを含む 1 つのバッチを発行します)。 .

同様のパターンは、他のケースにも当てはまります。

于 2009-07-06T12:40:17.100 に答える
0

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

于 2009-07-06T12:42:00.297 に答える