2011-12-16 6 views
1

asp.netアプリケーションでデータ型を使用することをお勧めしますか?Asp.Netアプリケーションでデータ型を使用する

ユーザーがコントロールをクリックするたびに、複数のクエリを実行する必要があります。 SQL Serverテーブルに直接移動するか、データテーブルにそのデータをロードし、LINQを使用してデータを取得する方がよいでしょうか。この場合、テーブルには10個の列と3000個以上の行があります。

答えて

3

これは実際にはかなり複雑な質問です(ここでの詳細はほとんどありません)。最高レベルでは、メモリ内のデータ保持の最適化と並行性やメモリ使用率などの要素のバランスを取ろうとしています。 caching strategiesについて少し読んだら、これらのトレードオフをどのように評価できるか理解し始めるでしょう。

+0

申し訳ありませんが、詳細不足のため。私はWin AppsをWeb Appsにプログラミングすることになった。最初にデータを扱う方法を決定するのはちょっと難しいです。見るべき側面がたくさんある。 – TroyS

+0

問題ありません。それはあなたが慣れ親しんだ概念とは異なる概念ではありません。 Winアプリケーションには、規模などに応じて、同じ考慮事項が多数あります。 –

0

DataTableは大丈夫ですが、SqlDataAdapterを使用するとSqlDataReaderと比較して遅いです。私は簡単な検索のために自分のカスタム構造にデータを読み込むのが好きです。

10列* 3000行は非常に小さく、重要なデータだった場合はそれをメモリに保持するとよいでしょう。 1セルあたり1kと仮定すると、それはわずか30kで、わずかです。ページへのトラフィックが多い場合、データベースからデータを取得するクエリの速度によってはるかに高速になります。

データを随時更新したり、データの変更を管理したりする必要があります。 ASPには、この目的で使用できるCacheオブジェクトがあり、さまざまな方法で有効期限を設定できます。

データが頻繁に変更される可能性があり、さまざまなソースから変更される場合は、変更の同時性を管理するのが複雑になる可能性があります。私がキャッシング戦略を使用するとき、私はそれを一定の変更の対象ではない重要でないデータに使用しようとします。これは、変更の多いデータをキャッシュすることは不可能だと言っているわけではなく、もっと複雑です。

+0

私は(唯一の)select文を実行しているので、datatableはより良い選択でしょうか?私はそれがまた、特にエラーがあった場合、接続を吊り下げることも防ぐだろうと思う。私は本当に上記のようにキャッシングを調べる必要があります。私はかなり新しいWebアプリケーションです。 – TroyS

関連する問題