4

更新:

同様の質問が見つかりました。

ASP.NET アプリケーションの AmbientContext デザイン パターンに従っていくつかのサービスを実装したいと考えています。
たとえば、ユーザー名 (Thread.CurrentPrincipal など) を要求処理の最初に 1 回設定し、非同期操作が実行されるときにスレッド間をフローする必要があります。
したがって、データを ExecutionContext にアタッチし、リクエストが処理されるときにデタッチする必要があります。

残念ながら、私はそれを行う方法がわかりません。

ドキュメントには小さなヒントしかありません:

内部的には、ExecutionContext は LogicalCallContext に関連付けられているすべてのデータを格納します。これにより、ExecutionContext がコピーおよび転送されるときに、LogicalCallContext データを伝搬できます。

4

1 に答える 1

2

同じ質問がありました。最終的に、メソッドとメソッドを使用してこれを実行できるCallContextクラスを見つけました。これは、このクラスの使用方法を説明する例を含む非常に優れた記事です。LogicalGetDataLogicalSetData

于 2016-04-12T11:35:45.783 に答える