title: .NET Core equivalent of CallContext.LogicalGet/SetData
body: <p>I am trying to move into .net core an existing .net application that is using CallContext.LogicalGet/SetData. </p>
  
  <p>When a web request hits the application I save a CorrelationId in the CallContext and whenever I need to log something later down the track I can easily collect it from the CallContext, without the need to transfer it everywhere. </p>
  
  <p>As CallContext is no longer supported in .net core since it is part of System.Messaging.Remoting what options are there?</p>
  
  <p>One version I have seen is that the AsyncLocal could be used (<a href="https://stackoverflow.com/questions/31707362/how-do-the-semantics-of-asynclocal-differ-from-the-logical-call-context">How do the semantics of AsyncLocal differ from the logical call context?</a>) but it looks as if I would have to transmit this variable all over which beats the purpose, it is not as convenient.</p>