Exemple #1
0
        public object getElementsByTagName(string name)
        {
            DOMNodeList list = new DOMNodeList();

            if (IsAssociated)
            {
                // enumerate elements in the default namespace
                foreach (XmlNode node in XmlElement.GetElementsByTagName(name))
                {
                    IXmlDomNode dom_node = DOMNode.Create(node);
                    if (dom_node != null)
                    {
                        list.AppendNode(dom_node);
                    }
                }

                // enumerate all namespaces
                XPathNavigator    navigator = XmlElement.CreateNavigator();
                XPathNodeIterator iterator  = navigator.Select("//namespace::*[not(. = ../../namespace::*)]");

                while (iterator.MoveNext())
                {
                    string prefix = iterator.Current.Name;
                    if (!String.IsNullOrEmpty(prefix) && prefix != "xml")
                    {
                        // enumerate elements in this namespace
                        foreach (XmlNode node in XmlElement.GetElementsByTagName(name, iterator.Current.Value))
                        {
                            IXmlDomNode dom_node = DOMNode.Create(node);
                            if (dom_node != null)
                            {
                                list.AppendNode(dom_node);
                            }
                        }
                    }
                }
            }

            return(list);
        }
Exemple #2
0
        public object getElementsByTagNameNS(string namespaceUri, string localName)
        {
            DOMNodeList list = new DOMNodeList();

            foreach (XmlNode node in XmlDocument.GetElementsByTagName(localName, namespaceUri))
            {
                IXmlDomNode dom_node = DOMNode.Create(node);
                if (dom_node != null)
                {
                    list.AppendNode(dom_node);
                }
            }

            return(list);
        }
Exemple #3
0
        private DOMNodeList IteratorToList(XPathNodeIterator iterator)
        {
            DOMNodeList list = new DOMNodeList();

            while (iterator.MoveNext())
            {
                IHasXmlNode has_node = iterator.Current as IHasXmlNode;
                if (has_node != null)
                {
                    IXmlDomNode node = DOMNode.Create(has_node.GetNode());
                    if (node != null)
                    {
                        list.AppendNode(node);
                    }
                }
            }

            return(list);
        }
Exemple #4
0
		public object getElementsByTagNameNS(string namespaceUri, string localName)
		{
			DOMNodeList list = new DOMNodeList();

			if (IsAssociated)
			{
				foreach (XmlNode node in XmlElement.GetElementsByTagName(localName, namespaceUri))
				{
					IXmlDomNode dom_node = DOMNode.Create(node);
					if (dom_node != null) list.AppendNode(dom_node);
				}
			}

			return list;
		}
Exemple #5
0
		public object getElementsByTagName(string name)
		{
			DOMNodeList list = new DOMNodeList();

			if (IsAssociated)
			{
				// enumerate elements in the default namespace
				foreach (XmlNode node in XmlElement.GetElementsByTagName(name))
				{
					IXmlDomNode dom_node = DOMNode.Create(node);
					if (dom_node != null) list.AppendNode(dom_node);
				}

				// enumerate all namespaces
				XPathNavigator navigator = XmlElement.CreateNavigator();
				XPathNodeIterator iterator =navigator.Select("//namespace::*[not(. = ../../namespace::*)]");
				
				while (iterator.MoveNext())
				{
					string prefix = iterator.Current.Name;
					if (!String.IsNullOrEmpty(prefix) && prefix != "xml")
					{
						// enumerate elements in this namespace
						foreach (XmlNode node in XmlElement.GetElementsByTagName(name, iterator.Current.Value))
						{
							IXmlDomNode dom_node = DOMNode.Create(node);
							if (dom_node != null) list.AppendNode(dom_node);
						}
					}
				}
			}

			return list;
		}
Exemple #6
0
		private DOMNodeList IteratorToList(XPathNodeIterator iterator)
		{
			DOMNodeList list = new DOMNodeList();
		
			while (iterator.MoveNext())
			{
				IHasXmlNode has_node = iterator.Current as IHasXmlNode;
				if (has_node != null)
				{
					IXmlDomNode node = DOMNode.Create(has_node.GetNode());
					if (node != null) list.AppendNode(node);
				}
			}

			return list;
		}