internal void InitializeActivity(Activity activity) { if (this.currentActivity == null) { throw new ObjectDisposedException("ActivityExecutionContext"); } if (activity == null) { throw new ArgumentNullException("activity"); } if (!IsValidChild(activity, false)) { throw new ArgumentException(SR.GetString(SR.AEC_InvalidActivity), "activity"); } if (activity.ExecutionStatus != ActivityExecutionStatus.Initialized) { throw new InvalidOperationException(SR.GetString(SR.Error_InvalidInitializingState)); } using (ActivityExecutionContext executionContext = new ActivityExecutionContext(activity)) { using (this.currentActivity.WorkflowCoreRuntime.SetCurrentActivity(activity)) activity.Initialize(executionContext); } }