Exemplo n.º 1
0
 /// <summary>
 /// Создаем документ и назначаем ему имя
 /// </summary>
 /// <param name="document_name">имя</param>
 /// <param name="inner_xml">содержимое</param>
 public void CreateDocument(string document_name, string inner_xml)
 {
     CreateDocument(document_name);
     xml_document.InnerXml = inner_xml;
     XmlElements.Clear();
     FillXmlElements(xml_document);
 }
Exemplo n.º 2
0
 /// <summary>
 /// Загрузка документа
 /// </summary>
 /// <param name="filename"></param>
 public void LoadDocument(string filename)
 {
     try {
         XmlTextReader xmlreader = new XmlTextReader(File.Open(filename, FileMode.Open));
         xml_document = new XmlDocument();
         xml_document.Load(xmlreader);
         XmlElements.Clear();
         FillXmlElements(xml_document);
         xmlreader.Close();
     } catch (XmlException ex) {
         throw new XmlFunException(ex.Message);
     }
 }
Exemplo n.º 3
0
        public void FillXmlElements(XmlDocument doc)
        {
            XmlElements.Clear();
            XmlElements.Add(doc.DocumentElement);
            Parallel.ForEach(doc.DocumentElement.ChildNodes.Cast <XmlNode>(), parallel_options, (el, loop_state) => {
                if (!(el is XmlDeclaration) && !(el is XmlSignificantWhitespace))
                {
                    ExtXmlNode ext_el = new ExtXmlNode(el);
                    if (ext_el != null)
                    {
                        lock ( XmlElements ) {
                            XmlElements.Add((XmlElement)ext_el.InnerNode);
                        }
                        FillXmlElements(ext_el);
                    }
                }
            });

            XmlElements.Sort(_SortFunc);
        }
Exemplo n.º 4
0
 /// <summary>
 /// Загрузка документа
 /// </summary>
 /// <param name="filename"></param>
 public void LoadDocument(XmlDocument _xml_document)
 {
     xml_document = _xml_document;
     XmlElements.Clear();
     FillXmlElements(xml_document);
 }