私はADO.NET C#コードを介して送信した単一のパラメータを送信しているストアドプロシージャを使用しようとしています。SQL Serverストアドプロシージャのエラー、タイムアウト時間が経過しました
さて問題は、ストアドプロシージャである私のdevの環境から呼び出さなっていると私は生産にそれを展開するとき、私はタイムアウトの例外がを経過取得していますし、それは(私がいるかどうかを確認するためにログを追加したストアドプロシージャに達することはありませんストアドプロシージャが実際にヒットし、どの段階でタイムアウトが発生するか)。
例外:System.Data.SqlClient.SqlException(0x80131904):タイムアウトがタイムアウトしました。操作が完了する前にタイムアウト時間が経過したか、サーバーが応答していません。 ---> System.ComponentModel.Win32Exception(0x80004005が):操作はSystem.Data.SqlClient.SqlConnection.OnErrorで
をタイムアウトし、待機(SQLException例外、ブールbreakConnection、アクション
1 wrapCloseInAction)
1 wrapCloseInAction)
at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action
System.Dataで.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj、ブールcallerHasConnectionLock、ブールasyncClose)System.Data.SqlClient.TdsParser.TryRun(runBehavior runBehavior、SqlCommandオブジェクトcmdHandler、SqlDataReaderのデータストリーム、BulkCopySimpleResultSet bulkCopyHandler、TdsParserStateObject stateObj、ブール& DATAREADY)
で
System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds、 RunBehavior runBehavior、ストリングresetOptionsString)System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(たCommandBehavior cmdBehavior、RunBehavior runBehavior、ブールreturnStream、ブール非同期、のInt32タイムアウト、タスク&タスク、ブールasyncWrite、で
SqlDataReaderのDS)System.Dataで
.SqlClient.SqlCommand.RunExecuteReader System.Data.SqlClient.SqlCommand.ExecuteNonQueryで(たCommandBehavior cmdBehavior、runBehavior runBehavior、ブールreturnStream、文字列方法、TaskCompletionSource1 completion, Int32 timeout, Task& task, Boolean asyncWrite)
1つの完了、文字列methodNameの、ブールsendToPipe、のInt32タイムアウト、ブールasyncWrite)
at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource
()
(ProjectName.ViewModel.ClassViewModel) <> c__DisplayClasse.b__d()
プロダクションサーバーで何が起こっているのかわかりません。この問題について私を案内してください。
同じエラーメッセージについて多くの質問がありますが、ストアドプロシージャが実行されず、それでもタイムアウトエラーが発生するような、問題の同様のシナリオを見つけることができません。
私はストアドプロシージャを含むでしょうが、それは非常に基本的なストアドプロシージャです。
助けてください:)
おかげで、 ニキルChavanを。
アプリケーションを使用せずにストアドプロシージャを直接実行し、クエリのさまざまな部分をコメントすることによって何がうまくいかないのかを調べようとすると、サーバーで実行する時間がどれくらいかかります – rashfmnb
実行するとストアドプロシージャが実行されますそれはSQL Serverの管理スタジオからそれはほとんど3-4秒かかります。問題は、ストアドプロシージャがADO.NETコードで使用しようとしているときにはまったく実行されないということです。 –
この接続文字列を使用しようとすると、この接続文字列を使用しようとします。DataSource = server; InitialCatalog = databaseUserId = username; Password = password;接続タイムアウト= 0、0は無制限タイムアウトを意味します – rashfmnb