private void LoadMetadata() { try { string documentText = string.Empty; // Check if Stylesheet Exists //if (!File.Exists(this._stylesheet)) { return; } // Load XML DOMDocument source = new DOMDocumentClass(); source.loadXML(this._dataset.Metadata); // Load XSL TextReader textReaderXsl = new StringReader(Resources.ISO); string xsl = textReaderXsl.ReadToEnd(); textReaderXsl.Close(); DOMDocumentClass style = new DOMDocumentClass(); style.load(xsl); // Transform XML (to HTML) documentText = source.transformNode(style); //if (string.IsNullOrEmpty(this._stylesheet)) { // // Load XML // TextReader textReaderXml = new StringReader(this._dataset.Metadata); // XPathDocument xml = new XPathDocument(textReaderXml); // // Load XSL // TextReader textReaderXsl = new StringReader(Resources.FILE_DEFAULT); // XPathDocument xsl = new XPathDocument(textReaderXsl); ; // // Compile Transformer // XslCompiledTransform xslCompiledTransform = new XslCompiledTransform(); // xslCompiledTransform.Load(xsl); // // Transform XML (to HTML) // StringBuilder stringBuilder = new StringBuilder(); // XmlWriter xmlWriter = XmlWriter.Create(stringBuilder, xslCompiledTransform.OutputSettings); // xslCompiledTransform.Transform(xml, xmlWriter); // documentText = stringBuilder.ToString(); // // Close Readers // xmlWriter.Close(); // textReaderXsl.Close(); // textReaderXml.Close(); //} //else { // //// Check if Stylesheet Exists // //if (!File.Exists(this._stylesheet)) { return; } // //// Load XML // //DOMDocument60Class source = new DOMDocument60Class(); // //source.loadXML(this._dataset.Metadata); // //// Load XSL // //DOMDocument60Class style = new DOMDocument60Class(); // //style.load(this._stylesheet); // //// Transform XML (to HTML) // //documentText = source.transformNode(style); // // Load XML // TextReader textReaderXml = new StringReader(this._dataset.Metadata); // XPathDocument xml = new XPathDocument(textReaderXml); // // Compile Transformer // XslCompiledTransform xslCompiledTransform = new XslCompiledTransform(); // xslCompiledTransform.Load(this._stylesheet); // // Transform XML (to HTML) // StringBuilder stringBuilder = new StringBuilder(); // XmlWriter xmlWriter = XmlWriter.Create(stringBuilder, xslCompiledTransform.OutputSettings); // xslCompiledTransform.Transform(xml, xmlWriter); // documentText = stringBuilder.ToString(); // // Close Readers // xmlWriter.Close(); // textReaderXml.Close(); //} // Assign Transfomed XML (HTML) to Web Browser this.webBrowser1.DocumentText = documentText; } catch (Exception ex) { ExceptionDialog.HandleException(ex); } }
/// <summary> /// Imports the specified files into the workspace. /// </summary> /// <param name="workspace">The workspace.</param> /// <param name="fileNames">The file names.</param> private Dictionary <string, bool> Import(IWorkspace workspace, string[] fileNames) { Log.Info(this, "- Import File(s): \t{0}", fileNames.Length); var ies = new Dictionary <string, IMMXMLImportExport4>() { { "MMFieldInfoIE", new MMFieldInfoIEClass() }, { "MMObjClassIE", new MMObjClassIEClass() }, { "MMRelClassIE", new MMRelClassIEClass() } }; var utils = new mmFrameworkUtilitiesClass(); var results = new Dictionary <string, bool>(); foreach (var fileName in fileNames) { var fileName1 = fileName; workspace.PerformOperation(true, () => { IXMLDOMDocument doc = new DOMDocumentClass(); if (doc.load(fileName1)) { var dtd = utils.AddDTD(mmTopLevelType.GXXMLTOPLEVEL, ref doc); if (dtd != 0) { return(false); } var nodes = doc.getElementsByTagName("IEPROGID"); nodes.reset(); IXMLDOMElement element; while ((element = nodes.nextNode() as IXMLDOMElement) != null) { var parentNode = (IXMLDOMElement)element.parentNode; var node = parentNode.selectSingleNode("FEATURENAME") ?? element.selectSingleNode("NAME"); Log.Info(this, "{0}:", node.text); var ie = ies.Select(o => o.Value).FirstOrDefault(kvp => element.text.EndsWith(kvp.ProgID, StringComparison.InvariantCultureIgnoreCase)); if (ie != null) { bool success; try { success = ie.Import(workspace, element, mmGxXMLOptions.mmGXOOverwrite, mmGxXMLSubtypeOptions.mmGXOReplace); Log.Info(this, "\t{0} => {1}", ie.DisplayName, success ? "SUCCESS" : "FAILED"); } catch (Exception e) { success = false; Log.Error(this, string.Format("\t{0} => {1}", ie.DisplayName, e.Message)); } results.Add(node.text, success); } } return(results.Last().Value); } return(false); }); } return(results); }
private void LoadMetadata() { try { string documentText = string.Empty; // Check if Stylesheet Exists //if (!File.Exists(this._stylesheet)) { return; } // Load XML DOMDocument source = new DOMDocumentClass(); source.loadXML(this._dataset.Metadata); // Load XSL TextReader textReaderXsl = new StringReader(Resources.ISO); string xsl = textReaderXsl.ReadToEnd(); textReaderXsl.Close(); DOMDocumentClass style = new DOMDocumentClass(); style.load(xsl); // Transform XML (to HTML) documentText = source.transformNode(style); //if (string.IsNullOrEmpty(this._stylesheet)) { // // Load XML // TextReader textReaderXml = new StringReader(this._dataset.Metadata); // XPathDocument xml = new XPathDocument(textReaderXml); // // Load XSL // TextReader textReaderXsl = new StringReader(Resources.FILE_DEFAULT); // XPathDocument xsl = new XPathDocument(textReaderXsl); ; // // Compile Transformer // XslCompiledTransform xslCompiledTransform = new XslCompiledTransform(); // xslCompiledTransform.Load(xsl); // // Transform XML (to HTML) // StringBuilder stringBuilder = new StringBuilder(); // XmlWriter xmlWriter = XmlWriter.Create(stringBuilder, xslCompiledTransform.OutputSettings); // xslCompiledTransform.Transform(xml, xmlWriter); // documentText = stringBuilder.ToString(); // // Close Readers // xmlWriter.Close(); // textReaderXsl.Close(); // textReaderXml.Close(); //} //else { // //// Check if Stylesheet Exists // //if (!File.Exists(this._stylesheet)) { return; } // //// Load XML // //DOMDocument60Class source = new DOMDocument60Class(); // //source.loadXML(this._dataset.Metadata); // //// Load XSL // //DOMDocument60Class style = new DOMDocument60Class(); // //style.load(this._stylesheet); // //// Transform XML (to HTML) // //documentText = source.transformNode(style); // // Load XML // TextReader textReaderXml = new StringReader(this._dataset.Metadata); // XPathDocument xml = new XPathDocument(textReaderXml); // // Compile Transformer // XslCompiledTransform xslCompiledTransform = new XslCompiledTransform(); // xslCompiledTransform.Load(this._stylesheet); // // Transform XML (to HTML) // StringBuilder stringBuilder = new StringBuilder(); // XmlWriter xmlWriter = XmlWriter.Create(stringBuilder, xslCompiledTransform.OutputSettings); // xslCompiledTransform.Transform(xml, xmlWriter); // documentText = stringBuilder.ToString(); // // Close Readers // xmlWriter.Close(); // textReaderXml.Close(); //} // Assign Transfomed XML (HTML) to Web Browser this.webBrowser1.DocumentText = documentText; } catch (Exception ex) { ExceptionDialog.HandleException(ex); } }