Entity Framework によって生成された SQL を表示するにはどうすればいいですか? 質問する

Entity Framework によって生成された SQL を表示するにはどうすればいいですか? 質問する

エンティティ フレームワークによって生成された SQL を表示するにはどうすればよいですか?

(私の場合は、mysql プロバイダーを使用しています - それが重要かどうかはわかりません)

ベストアンサー1

Entity Framework 6 以降を使用している場合 (EF CORE ではなく、以下のコメントを参照)、出力 SQL を Visual Studio で表示したい場合 (私が行ったように)、新しいログ記録/インターセプト機能を使用する必要があります。

次の行を追加すると、生成された SQL (および実行関連の追加の詳細) が Visual Studio 出力パネルに表示されます。

using (MyDatabaseEntities context = new MyDatabaseEntities())
{
    context.Database.Log = s => System.Diagnostics.Debug.WriteLine(s);
    // query the database using EF here.
}

EF6 でのログインに関する詳細は、この便利なブログ シリーズをご覧ください。http://blog.oneunicorn.com/2013/05/08/ef6-sql-logging-part-1-simple-logging/

注: プロジェクトを DEBUG モードで実行していることを確認してください。

おすすめ記事