WCF サービスを Azure に移行するために、Repository クラスに Connection Resiliency を追加してテストしようとしています。Julie Lerman のすばらしい投稿があります。
通常の Entity Framework クエリを使用するリポジトリ メソッドを呼び出すと、Interceptor ReaderExecuting メソッドがトリガーされ、接続の問題をシミュレートできます。
var states = dbContext.Blogs.ToList();
しかし、何らかの理由で、ストアド プロシージャから返された「複数の結果セット」を使用するリポジトリ メソッドの 1 つが実行されているときに、Interceptor ReaderExecuting メソッドが呼び出されません (以下のコードを参照)。「ObjectContext.Translate」または「ToList」が実行されたときに ReaderExecuting メソッドが呼び出されることを期待していますが、そうではありません。
db.Database.Connection.Open();
var reader = cmd.ExecuteReader();
var blogs = ((IObjectContextAdapter)db).ObjectContext.Translate<Blog>(reader).ToList();
参考までに、「複数の結果セット」の処理については、この記事に従っています。
https://msdn.microsoft.com/en-us/data/jj691402.aspx
接続の回復力を処理するために、Entity Framework 6+ 実行戦略を中継しようとしています。しかし、複数の結果セットを処理できない場合、私の次のオプションは、一時的な例外処理に Polly ライブラリを使用することです。
このような状況に遭遇したことがありますか?
それに対する解決策はありますか?