asp.net 経由でストアド プロシージャを実行しているときに、アプリケーションがconnect timeout expire
例外をスローします。しかし、クエリ ウィンドウからストアド プロシージャを実行すると、46 秒で正常に実行されます。
問題について何か考えはありますか?
asp.net 経由でストアド プロシージャを実行しているときに、アプリケーションがconnect timeout expire
例外をスローします。しかし、クエリ ウィンドウからストアド プロシージャを実行すると、46 秒で正常に実行されます。
問題について何か考えはありますか?
接続文字列でタイムアウト値を設定できますが、実行する特定のストアドプロシージャのタイムアウト値を設定するには、@doterobが提案する方法を使用できます。
次のリンクを確認してください。
編集:
ストアドプロシージャの実行に時間がかかる理由を確認することをお勧めします。
このコードを使用して、所要時間を確認します
SqlCommand cmd = new SqlCommand();
cmd.CommandTimeout = 100;(100 is in second)
CommandTimeoutを増やすことで、確認できます。
それはあなたかあなたのどちらかかもしれません。SSMSで46秒かかるとおっしゃっていたので、Webサーバーのタイムアウトだと思います。両方のタイムアウト値を適切な値に増やすことをお勧めします。sql command execution times out
web server times out
IIS の場合は、IIS マネージャーを使用してそれを行うことができます。これはIIS 7.0の良いリンクです
実行によりタイムアウト例外が発生します。タイムアウトパラメータを変更できます
ストアド プロシージャを実行する SqlCommand を作成すると、タイムアウトを秒単位で設定できます。
SqlCommand command = new SqlCommand();
command.CommandTimeout = 100; //100 seconds