を実行している間、私は直接クエリを実行しています、それは自然の中で簡単です:データセットがタイムアウトクエリはすぐに
SELECT * FROM [dbo].[vwUnloadedJobDetailsWithData] WHERE JobId = 36963
私は、クエリが偶数秒を取らない経営のスタジオからこれを実行すると。私がテーブルアダプタの中からそれを実行すると、タイムアウトします。私はこれを複数回修正しましたが、修正は馬鹿です。 xsdファイルからテーブルアダプタを削除して再作成すると、管理スタジオのクエリ時間と約2日間一致しますが、asinineを再デプロイする必要があります。
これを引き起こしている可能性のあることについての洞察は非常に高く評価されます。私はこれについてもう一つの質問を見たことがあるが、クエリの前にset arithabortを含む解決策は私にとっては効果がなかった。
編集:クエリを呼び出すコードを表示するように求められました。私は私のXSDファイルに入ると全く同じようにプレビューデータを行うときに今、これは起こるが、明確化のために、ここにある:
using (TEAMSConnection connection = new TEAMSConnection())
{
connection.OpenConnection();
_JobDetailsDAO jobDetailDao= new _JobDetailsDAO(connection);
return jobDetailDao.GetUnloadedJobDetailsByJobId(jobId);
}
は、接続の処分にデータベース接続が閉じられます。
if (_DBConnection != null && _DBConnection.State == ConnectionState.Open)
_DBConnection.Close();
EDIT2:このコード行を使用して、私はここにトレースを実行したとしている セットが セットに セットANSI_WARNINGSをオフにNUMERIC_ROUNDABORTオフARITHABORT セットに
セットQUOTED_IDENTIFIERを設定されている設定オプションを セット言語us_englishのオフ セットIMPLICIT_TRANSACTIONSをオフCURSOR_CLOSE_ON_COMMIT セットに セットCONCAT_NULL_YIELDS_NULLに セットANSI_NULLSにANSI_PADDING
を犯し7 セットのトランザクション分離レベルの読み取りDATEFIRST 0セットDATEFORMAT MDY セット私が行って、その私が管理スタジオで生成され、それはまだ1秒未満で走ったクエリに追加。私はトレースと同じように正確にクエリをコピーしました。
exec sp_executesql N'SELECT * FROM [dbo].[vwUnloadedJobDetailsWithData] WHERE JobID = @JobId',N'@JobId int',@JobId=36963
これはまだ2番目の戻り時間です。私はとても混乱しています。
おかげで、 ジョシュこれが起こっされるだろう、なぜ
DB接続を終了していないようですが、C#コードを共有していないために何が起こっているのかを知ることは難しいです。 –
申し訳ありませんが、接続を閉じるまで、共有するコードはあまりありません。間違いなく閉じています。もし私がそれが助けになると思うなら、私はその質問の回りに私の質問と接続処理を掲示します。 – joshlrogers