Как заставить WCF распространять свойства Trace.CorrelationManager, когда он использует другой поток для той же операции?
Я знаю, что WCF не гарантирует сходство потоков. Таким образом, в основном один поток может начать запрос, а другой поток может его завершить. Когда я воспроизвел это поведение, я увидел, что у первого потока правильно установлены два свойства Trace.Correlation.ActivityId и Trace.Correlation.LogicalOperationStack. WCF завершил операцию с другим потоком, но свойства не были распространены.
Чтобы обойти это, мне, возможно, придется отказаться от использования CorrelationManager и, вероятно, придется сохранить ActivityId в OperationContext, который, как я знаю, распространяется на новый поток (пожалуйста, поправьте меня, если я здесь ошибаюсь). Я не хочу этого делать, так как это, конечно, больше работы и не так элегантно, как использование этого единственного свойства.
Любые другие идеи о том, как я могу обойти это? Могу ли я сказать WCF как-то распространять это для меня?
Спасибо, Мохаммед