DbContext.SaveChanges()
メソッドのデフォルトのタイムアウト値はありますか。私はsavchanges()
メソッドを使用してデータをデータベースに保存するアプリケーションに取り組んでいます。ただし、この方法では、次のエラーメッセージが表示されます。db.savechanges()のデフォルトのタイムアウト値?
"操作が完了する前にタイムアウト時間が経過しているか、サーバーが応答していません"。
DbContext.SaveChanges()
メソッドのデフォルトのタイムアウト値はありますか。私はsavchanges()
メソッドを使用してデータをデータベースに保存するアプリケーションに取り組んでいます。ただし、この方法では、次のエラーメッセージが表示されます。db.savechanges()のデフォルトのタイムアウト値?
"操作が完了する前にタイムアウト時間が経過しているか、サーバーが応答していません"。
このエラーが原因になることがあります。 どこかのコードおよび/またはクエリでデッドロックが複雑で、チューニングする必要があります。 上記の点を考慮して見つけてください。解決しない場合はお知らせください
ありがとうございました。
いいえ照会は、linqを使用してデータベースにレコードを挿入する簡単な照会です。アプリケーションは1つのサーバーで正常に動作していますが、他のサーバーでは失敗しています。 –
あなたがタイムアウトを指定しない限り:
context.Database.CommandTimeout = 1000;
デフォルトのタイムアウトは、(私はあなたがそれを変更することができわからないんだけど、うまくいけば、より大きなタイムアウトを設定することに役立つかもしれない)のコネクタから取得されます。
EDIT: はまた、あなたがDbContextは、接続の開閉を処理させる、その方法を囲むときは、使用してのような
using(var ctx = new Entity())
{
ctx.Object.AddObject(a);
ctx.SaveChanges();
}
以内に治療を同封してください。
まだ開いていて、別のものを開くことができないと思われます。
ctx.Database.CommandTimeout = 120 //必要なだけ増やします。 –