Обычный способ справиться с этим - определить OutArgument и в конструкторе рабочих процессов связать OutArgument с вашей переменной. В упражнении вы работаете только с аргументом. Использование NativeActivity дает вам OutArgument с именем Result, но просто добавление свойства OUtArgument подойдет.
Еще одним преимуществом является то, что вам не нужно знать «волшебные» имена переменных для хранения результатов.
Обновление, поскольку код в комментарии ниже не читается.
Попробуйте добавить следующее прямо перед строкой, в которой оно взрывается:
var pi = context.GetType().GetProperty("AllowChainedEnvironmentAccess", BindingFlags.NonPublic | BindingFlags.Instance);
pi.SetValue(context, true, null);
Полностью не поддерживается, поэтому используйте с осторожностью: -)