Я не верю, что вы можете делать то, что пытаетесь сделать.Один человек предложил поместить код в сборку, к которой у бегуна есть доступ.
Есть сообщение в блоге , о котором вы, вероятно, знаете, описывающее проблему.
Код модульного тестирования, который выполняет многопоточность, может быть сложным, и я стремлюсь изолировать потоки и переносить статические объекты.
Если бы это был я, я думаю, что я бы попытался изолировать CallContext.SetData и CallContext.GetData путем переноса контекста вызова в класс CallContextWrapper: ICallContextWrapper.
Я хотел бы проверить, что мой код использует contextWrapper.SetData ("Test", f) и покончить с этим;
Я быповерьте, что тот, кто написал CallContext, проверил свою способность принимать некоторые данные и переносить их в новый поток.IMO CallContext - это фреймворковый код, который уже должен был быть протестирован, поэтому вам просто нужно изолировать зависимость вашего кода от CallContext.