2

IDbCommandInterceptorEntity Framework クエリをキャッチするために使用しています。このようにして、DbParametersDbCommandなどの重要な情報にアクセスできます。

しかし、このクエリが呼び出された場所も取得する必要があります。を使用してこれを取得しようとしましたStackTrace:

StackTrace stackTrace = new StackTrace();
System.Reflection.MethodBase methodBase = stackTrace.GetFrame(1).GetMethod();

これは通常のメソッド呼び出しで機能する可能性がありますが、この例では Entity Framework メカニズムをインターセプトしているため、コードで呼び出し元のメソッドを取得できないことがわかります。

Entity Framework クエリが実行されたときに、呼び出し元のメソッド名を自動的に取得することは可能ですか?

4

1 に答える 1