私は自分のコードの一部からサードパーティのコードのいくつかのレイヤーを介して呼び出しています。呼び出しは、自分が書いたコードを呼び出すことによって、ある時点で自分のコードに戻ってきます。
つまり、コード呼び出しチェーンは次のようになります。
私のコード#1->サードパーティのコード->私のコード#2
残念ながら、サードパーティのコードに渡すものはその2番目のコードに与えられないため、コードが同じスレッドで実行されるという事実を除いて、最初の部分と2番目の部分を結び付けることはできません。
[ThreadStatic]
それで、クラスの静的フィールドで単に使用することがこれに対する実行可能な解決策であるかどうか疑問に思いましたか?
コードはWebアプリケーションでも実行されるため、アクセスする必要のある値(オブジェクト)はユーザー/セッションごとに異なるため、静的フィールドを使用することはできません。
すなわち。私はこのようなことをします:
internal static class DataHolder
{
[ThreadStatic]
internal static ClassName FieldName;
}
これに対する他の解決策はありますか?