protected override void PreFilterProperties(IDictionary properties)
        {
            base.PreFilterProperties(properties);
            CallExternalMethodActivity activity = base.Activity as CallExternalMethodActivity;
            object corrRefProperty = properties["CorrelationToken"];

            this.AddRemoveCorrelationToken(activity.InterfaceType, properties, corrRefProperty);
            Type interfaceType = activity.InterfaceType;

            if (interfaceType != null)
            {
                this.AddRemoveCorrelationToken(interfaceType, properties, corrRefProperty);
                activity.GetParameterPropertyDescriptors(properties);
            }
        }
        protected override void PreFilterProperties(IDictionary properties)
        {
            base.PreFilterProperties(properties);

            CallExternalMethodActivity invokeMethod = Activity as CallExternalMethodActivity;

            object corrRefProperty = properties["CorrelationToken"];

            AddRemoveCorrelationToken(invokeMethod.InterfaceType, properties, corrRefProperty);

            Type type = invokeMethod.InterfaceType;

            if (type == null)
            {
                return;
            }

            AddRemoveCorrelationToken(type, properties, corrRefProperty);

            invokeMethod.GetParameterPropertyDescriptors(properties);
        }