redwarrior’s diary

C#, ASP.NET, WEB, G*などの雑多な情報

(小ネタ)Entity Framework でタイムアウトの設定方法まとめ

ExecuteSqlCommandでストアドプロシージャを実行した時にタイムアウトが発生してエラーになってしまったので、タイムアウトの時間を変更する方法を調べてみました。

また、デバック実行時にDB接続でタイムアウトがぼちぼち発生して面倒なので、コネクションタイムアウトの方法も調べました。

DBはSQL Serverです。

コマンドタイムアウト

ストアドプロシージャ実行時のタイムアウトの時間を変更する方法。

DbContextクラスを継承したクラスのDatabaseプロパティに設定する。(既定値は30秒)

//コンストラクタで指定する場合
this.Database.CommandTimeout = 60;

EntityFramework(24):落穂ひろい:Gushwell's Dev Notes

SqlCommand.CommandTimeout プロパティ (System.Data.SqlClient)

接続タイムアウト

デバック実行時のタイムアウトの時間を変更する方法。

Web.configのconnectionString属性に追加する。(既定値は15秒)

Connection Timeout=30

[SQL Database] 接続タイムアウトの発生を改善したい – Microsoft SQL Server Japan Support Team Blog

以上です。