2012-01-04 10 views
1

1)非常に遅くロードされ、20秒以上かかりますが、データベースがロードされます。それは普通ですか?C# - asp.net - このコーディングに関するいくつかの質問

2)うまく接続すれば、私はhelloとbyeの応答をテストに入れます。 helloとhellohellololoのような何度も書きます... byebyebyebye ...これは普通ですか?私はこれが質問3と関係があると考えていました。

3)私がcatch(例外)をコメントアウトすると、InvalidOperationException "timeout expired"というエラーが出ます。私は、キャッチは、それらの間違いをキャッチするのに良いと思った。何度も何度も同じエラーではなかった。私はそれは何かが間違っていると思う?

+1

空のキャッチは悪いと見なされます...明示的に無視するとエラーは発生しません。 –

+0

MainDBにはいくつの行/列がありますか? – earthling

+0

約3行5列。 – healxph0enix

答えて

3

これは、例外的に「スワロー」するのが一般的ではない理由です。ほとんどの場合、データベース要求のタイムアウトを引き起こす深刻な問題があります。問題の原因を突き止めるのに役立つエラーを表示するのではなく、ユーザーがシステムに永久にページ。

データベーステーブル構造または接続のいずれかに実際に問題があるか、単に「SELECT * FROM ...」を実行するデータが多すぎるため、パフォーマンスが低下する可能性があります。

複数の「hello」と「bye」メッセージに関して、何かが明らかにPage_Loadに複数回呼び出される原因となっています。これは、このコードがコントロール上にあり、複数のコントロールインスタンスをページに追加している場合に発生します。私はまた、それが他の状況で起こるのを見ましたが、私は何を正確に覚えていません。

+0

あなたが言ったことをうれしく思います。私はこれを他の場所に掲載しました。彼らは良い質問ではないと言いました。あなたは何を求めていますか?/ – healxph0enix

+0

私は非常に小さなDBを持っています。カラム数は少なく、3行に似ています。 MasterCustはGridViewです。私はmastercustコードをコメントアウトし、それは遅れなく走った。こんにちは20回言わずに完璧に細かく接続しました。 – healxph0enix

0

クエリのタイムアウト(デフォルトのタイムアウトは30秒)のようですが、空のキャッチブロックで例外を飲み込んでいるようです。あなたが唯一のSQLは、内部の呼び出しをしますか、フォームのロードでは、あなたのデータセットのサイズを確認してください以下のクエリを実行します(MAINDBからトップ100 *を選択)

+0

私は非常に小さなDBを持っています。私はとにかく同じ結果をコードを試した – healxph0enix

0

if(!(Page.IsPostback)) 
{ 

    //Do SQL in here 

} 

SQLようにするにはページが更新されるたびに実行されません。

+0

それを修正していない= [ – healxph0enix

+0

Hmm。さて、この( "データソース= aserver;初期カタログ= KennyCust;セキュリティ情報= True、ユーザーID = sa; pwd = qwerty01")がこれになるように、SQL接続文字列にタイムアウト引数を追加することができます初期設定は15秒で、1500秒に設定されていると思いますが、デフォルトでは15秒です。 http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection.connectionstring(v=VS.100).aspx – paparush

関連する問題