私は新しいプロジェクトを開始しており、SimpleInjectorインターセプト(https://simpleinjector.readthedocs.io/en/latest/InterceptionExtensions.html)を使用して、メソッドの入口/出口とロギングパラメータと戻り値などをトレースすることを考えています。過去にこのインターセプタを使用しました。よく働く。しかし私の以前のプロジェクトは、非同期/待たずでした。この新しいプロジェクトには、非同期/待機のすべてのメソッドがあり、私は不思議に思っていましたasync/aswaitコードでのSimpleInjectorインターセプト
- このインターセプタは非同期/待機メソッドで動作しますか?
- このインターセプタでは、非同期/待機メソッドでどのような変更を行う必要がありますか?
私はデコレータが傍受よりもはるかに良いパターンであることを理解していますが、トレースしたいインターフェイスごとにデコレータを書くことは、私がやりたいことではありません。
更新: 私の非同期/待機コードでこのインターセプタを試してみましたが、トレースコードが挿入されました。しかし、私はアプリケーションのいくつかの部分で奇妙な結果を得ていました。私は、傍受を無効にすると、それがうまく動作する理由と、傍受が有効になったときに、なぜ期待どおりに動作しないのかを詳しく知る機会はありませんでした。私のコードでは間違いかもしれません。
コードでこのインターセプト拡張をすでに使用している誰かが私に正しい方向を向けることができたらと思っていました。
は '非同期/ため、このインターセプタ作業はメソッドを待ってます'、あなたがそれをしようとしたとき、それは動作しましたか? –
"それは動作するのですか?"非同期呼び出しを処理するメソッドを明示的に記述すると、そうです。 – Steven