私たちは DI に Autofac 4 を使用しており、少し前に AI の実験を開始しました。ここで、必要な IdentityTelemetryInitializer クラスと IIdentityProvider を作成して、現在の承認済みユーザーの ID を取得し、それをコンテキストに追加できるように設定しました。TelemetryInitializer に依存関係を挿入する方法が見つかりません。IIdentityProvider を取るコンストラクターを定義すると、カスタム初期化子は完全にスキップされます。どんなアイデアでも大歓迎です。この方法でアクセスできるように、ユーザー ID もスレッド プリンシパルとして設定することを考えていましたが、これに DI を使用できることを望んでいましたか?
1737 次
2 に答える
0
私がここで尋ねた質問を見るかもしれません 認証されたユーザーIDで「リクエスト」イベントを行う方法は?
@yonisha の提案に従って、TelemetryInitializer を機能させることができたので、HttpContext を介してユーザー ID を渡しました。
もちろん、達成しようとしているほどスリムではありません。
Telemetry Initializer は、Telemetry クラスをインスタンス化するたびに呼び出されるため、それらの管理方法に大きく依存します。ところで、私はそれに関する良いアドバイス/ベストプラクティスを探しています: 今のところ、何かを追跡する必要がある各コントローラーに 1 つのプライベートインスタンスがありますが、コントローラーの寿命のために良いにおいがしません。
于 2018-03-28T13:16:06.613 に答える