3

この興味深いインタビューの質問を見つけました:

WebフォームのDataGridに、過去5年間の部門の売上データを表示する必要があります。パフォーマンスは非常に重要です。データの取得に使用するのに最適な戦略は何でしょうか?

  • a)DataReaderオブジェクトを使用して、DataGridのデータを取得します。
  • b)DataSetオブジェクトを使用して、DataGridのデータを取得します。
  • c)DataGridのデータソースとして単純なselectステートメントを使用します。
  • d)キャッシュされたXMLファイルをデータソースとして使用し、DataSetを使用してデータを取得します。

私の答えはc)ですが、よくわかりません。誰かが私に正しい答えを教えてくれますか。ありがとうございます。

4

4 に答える 4

3

ページングを使用します。

ストアドプロシージャを使用してこれを実行することもできます。

于 2010-10-19T19:09:54.123 に答える
1

基本的に、テストでパフォーマンスと DataReader および DataSet が言及される場合、経験則として、DataReader == 速く、DataSet == 遅くなります。

于 2010-10-19T19:13:14.803 に答える
1

おそらく、提供された回答の選択肢 A だと思いますが、ページングは​​間違いなくより正しい回答です。DataSet は遅く、テーブル全体をロードしますが、DataReader は非常に高速で、レコードを反復するだけです。

select ステートメントをデータソースとして使用することは、悪い習慣であり、決してお勧めできません。

于 2010-10-19T19:14:11.947 に答える
0
  1. パフォーマンスが非常に重要な場合は、データグリッドを使用せず、リピーターまたは通常のループを使用してください。
  2. キャッシュされた XML ファイル (メモリ) は、データベースからデータを取得するよりも高速であると思いますが、かなりの量のメモリを使用する可能性があるため、正しい答えではないと思います。
  3. selectステートメントとDataReaderは非常に似ていますが、DataReaderにはすぐに使える機能がいくつかあるので、それが私の答えです。
于 2010-10-19T19:16:59.643 に答える