エンティティ フレームワークによって生成された 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 モードで実行していることを確認してください。