私は3層のWindowsフォームアプリケーションで作業しています。データ転送について混乱しています。
データグリッドのあるページにいくつかのアイテムが含まれています。グリッドはマルチタブなので、最初のタブは項目で、2 番目のタブは機能です。ユーザーが 2 番目のタブを選択すると、グリッドは選択した項目の機能を更新します。
ここでは、ItemDTO が List of Items と List of Features で構成されています。データベースからデータを取得する方法
- LINQ で結合する itemID を使用して機能を設定できるように、すべての項目と機能を選択します。ここでは単一の DB ヒットのみですが、私の混乱はデータの大きさです。各アイテムには複数の機能が用意されているためです。
- 選択したインデックスが変更されたタブで、同じ DTO で選択した項目に基づいて機能を取得する必要があります。ここではデータは問題ありませんが、タブを変更するたびにデータを取得する必要があります。また、ページ/関数用に DTO を設計したので、とにかく、機能が読み込まれるときにアイテムも読み込まれる必要があります。これは不要です。または、私の DTO 設計が間違っていますか?
どちらがより良いアプローチですか?または他の代替手段はありますか?