【发布时间】:2017-02-15 06:35:02
【问题描述】:
我正在尝试将使用 CallContext.LogicalGet/SetData 的现有 .net 应用程序移入 .net 核心。
当网络请求到达应用程序时,我将 CorrelationId 保存在 CallContext 中,并且每当我需要稍后记录某些内容时,我都可以轻松地从 CallContext 中收集它,而无需将其传输到任何地方。
由于 CallContext 是 System.Messaging.Remoting 的一部分,因此在 .net 核心中不再支持它,有哪些选项?
我看到的一个版本是可以使用 AsyncLocal (How do the semantics of AsyncLocal differ from the logical call context?),但看起来我必须将这个变量传输到所有地方,这超出了目的,不太方便。
【问题讨论】:
标签: .net-core callcontext