データベース関連のすべての操作がデータベース層で実行される 3 層アプリケーションがあります。
いくつかのクエリでは、巨大なデータが sqldatareader (32 列で約 1000 万行) にフェッチされます。私の質問は、この大きなデータをプレゼンテーション レイヤーに渡し、レポートを生成する方法です。
分析した後、以下のオプションがあります。同じことについてあなたの意見を共有してください。
sqlDatareader 自体を渡す
- 接続を常に開いたままにしておく必要があるため、これは実際にはアイデアではありません。
データテーブルを使用
- sqldatareader をデータテーブルにロードし、return ステートメントとして渡します。これは良さそうですが、これが適切なアプローチであるかどうかはわかりません。この場合、アプリケーションの全体的なパフォーマンスに影響するかどうかを知りたいです。?
リストをカスタム オブジェクトとして使用します。
そのwinformベースのアプリケーションは単一のマシンにのみインストールされ、.net Framework 3.5を使用しています
ご意見やご感想をお待ちしております。