mi-tarou さんのブログ
2012
2月
22
(水)
23:32
[ASP.NET] WebFormのSqlDataSourceが遅すぎる?!
カテゴリー
programming
システムを作ると、毎度完璧を目指しますが、完璧なんてまずあり得ないです。
稼働してから、あーすれば良かったとか、こっちの方が良かったんじゃないかなんて思うのは常です。
だから、自分の中では60点を合格点にしています。(大学の単位は、60点で取れるから)
Webアプリケーションで、フレームワークはMCVに従うのが、個人的な好みです。
仕事では、そんな選り好みなんてできないので、指定された範囲の中で上手にやりくりしています。
Visual StudioをIDEとしWebFormを使ったシステムを最近では作っています。
WebFormは、Windowsアプリ開発みたいな感覚で、サーバーコントロールをペタペタ並べていくと簡単にWebアプリができてしまいます。
データベースやデータソースへのアクセスにもコントロールが準備されているので、接続文字列さえ設定すればホント簡単にデータ連携を行うことができます。
データベースから、データを抽出するコントロールに『SqlDataSource』というのがあります。
このコントロールで、select、delete、update、insertなどを設定することができ、データセットを取得することができます。
この取得したデータセットを、他のコントロールへ渡せば、一覧表なども簡単に作成できるのです。
ところが、このSqlDataSourceなんですが、とても遅い気がします。
データを2000件取得して、画面に一覧表示させる(GridView)のに数十秒かかるのです。
(2000件も表示するような設計が悪いとかは置いといて)プログラムでデータを取得するコードを記載した場合は、2、3秒で表示できます。
SqlDataSourceのプロパティの設定も色々やってみましたが、たいして速くならないです。
しかも、SqlDataSourceの動作は、デバックができないのでバグ解析に時間を要してしまいます。
きっと、何か技があるはずと思って、現在調べていますがハマりそう。。。
合わせて、読みたい・・・。
高パフォーマンス ASP.NET アプリケーションの開発
--- 2012.02.23 追記 ---
SqlDataSourceは悪くありませんでした。
なので、SqlDataSourceを利用しても性能には影響があまりなさそうです。
お騒がせしました。
稼働してから、あーすれば良かったとか、こっちの方が良かったんじゃないかなんて思うのは常です。
だから、自分の中では60点を合格点にしています。(大学の単位は、60点で取れるから)
Webアプリケーションで、フレームワークはMCVに従うのが、個人的な好みです。
仕事では、そんな選り好みなんてできないので、指定された範囲の中で上手にやりくりしています。
Visual StudioをIDEとしWebFormを使ったシステムを最近では作っています。
WebFormは、Windowsアプリ開発みたいな感覚で、サーバーコントロールをペタペタ並べていくと簡単にWebアプリができてしまいます。
データベースやデータソースへのアクセスにもコントロールが準備されているので、接続文字列さえ設定すればホント簡単にデータ連携を行うことができます。
データベースから、データを抽出するコントロールに『SqlDataSource』というのがあります。
このコントロールで、select、delete、update、insertなどを設定することができ、データセットを取得することができます。
この取得したデータセットを、他のコントロールへ渡せば、一覧表なども簡単に作成できるのです。
ところが、このSqlDataSourceなんですが、とても遅い気がします。
データを2000件取得して、画面に一覧表示させる(GridView)のに数十秒かかるのです。
(2000件も表示するような設計が悪いとかは置いといて)プログラムでデータを取得するコードを記載した場合は、2、3秒で表示できます。
SqlDataSourceのプロパティの設定も色々やってみましたが、たいして速くならないです。
しかも、SqlDataSourceの動作は、デバックができないのでバグ解析に時間を要してしまいます。
きっと、何か技があるはずと思って、現在調べていますがハマりそう。。。
合わせて、読みたい・・・。
高パフォーマンス ASP.NET アプリケーションの開発
--- 2012.02.23 追記 ---
SqlDataSourceは悪くありませんでした。
なので、SqlDataSourceを利用しても性能には影響があまりなさそうです。
お騒がせしました。
閲覧(5190)