更新
找到了类似的question。
我想在ASP.NET应用程序的AmbientContext设计模式之后实现一些服务
例如,我需要在请求处理的最开始设置一次用户名(如Thread.CurrentPrincipal),并在执行异步操作时在线程之间流动。
因此,我需要将数据附加到ExecutionContext,然后在处理请求时将其分离。
不幸的是,我不知道怎么做。
documentation中只有一个小提示:
在内部,ExecutionContext存储所有关联的数据 使用LogicalCallContext。这允许LogicalCallContext数据 在复制和传输ExecutionContext时传播。
答案 0 :(得分:2)
我有同样的问题。我最终找到了CallContext类,它可以使用LogicalGetData
和LogicalSetData
方法执行此操作。这是一个very good article with examples,讨论如何使用这个类。