public override object Invoke(XsltContext xsltContext, object[] args, XPathNavigator docContext) { CorrelationDataMessageProperty property; string str; SeekableMessageNavigator navigator = docContext as SeekableMessageNavigator; if ((navigator != null) && (CorrelationDataMessageProperty.TryGet(navigator.Message, out property) && property.TryGetValue((string)args[0], out str))) { return(str); } return(string.Empty); }
internal override void InvokeInternal(ProcessingContext context, int argCount) { StackFrame topArg = context.TopArg; Message contextMessage = context.Processor.ContextMessage; CorrelationDataMessageProperty property = null; CorrelationDataMessageProperty.TryGet(contextMessage, out property); while (topArg.basePtr <= topArg.endPtr) { string str; if ((property == null) || !property.TryGetValue(context.PeekString(topArg.basePtr), out str)) { str = string.Empty; } context.SetValue(context, topArg.basePtr, str); topArg.basePtr++; } }