Azure sql db にストアド プロシージャがあり、SSMS から実行すると、約 300 ミリ秒で完了します。sproc は ID と日付範囲を受け取り、いくつかのデータを収集して集計テーブルに保存します。結果は返されません。
EF コードの最初の ExecuteStoreCommand オブジェクト (同じパラメーターを使用) から実行すると、完了するまでに約 60 秒かかります。
context.Database.ExecuteSqlCommand と context.Database.SqlQuery も同じ結果で使用しようとしましたが、非常に遅いです!
sproc の直接実行と比較して EF の実行が非常に遅い理由を誰か説明してもらえますか?
EFが何をしているかを教えてくれるまともなツールはありますか(プロファイラー?)