public static XMLTransformer CreateFromFileWithCache(string xslFileName, ILog log) { if (xslFileName == null) { return(null); } XMLTransformer t = null; lock (_transformerList.SyncRoot) { t = _transformerList[xslFileName] as XMLTransformer; if (t == null) { t = CreateFromFile(xslFileName, log); if (t != null) { _transformerList.Add(xslFileName, t); } } } return(t); }
private void buttonTransform_Click(object sender, EventArgs e) { string file = Path.Combine(Application.StartupPath, this.textBoxXSLT.Text.Trim()); XMLTransformer t = XMLTransformer.CreateFromFile(file, Program.Log); if (t == null) { MessageBox.Show(this, "Create XSLT transformer failed. See the log file for details.", this.Text); return; } string csbxml = ""; string hl7xml = _ctrlHL7Msg.GetXmlString(); if (t.TransformString(hl7xml, ref csbxml, XSLTExtensionType.None)) { _ctrlCSBMsg.Open("<?xml version=\"1.0\" encoding=\"UTF-8\" ?>" + csbxml); } else { MessageBox.Show(this, "XSLT transform failed. See the log file for details.", this.Text); return; } }