当前位置: 首页>>代码示例>>C#>>正文


C# XmlNodeReader.MoveToFirstAttribute方法代码示例

本文整理汇总了C#中System.Xml.XmlNodeReader.MoveToFirstAttribute方法的典型用法代码示例。如果您正苦于以下问题:C# XmlNodeReader.MoveToFirstAttribute方法的具体用法?C# XmlNodeReader.MoveToFirstAttribute怎么用?C# XmlNodeReader.MoveToFirstAttribute使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在System.Xml.XmlNodeReader的用法示例。


在下文中一共展示了XmlNodeReader.MoveToFirstAttribute方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: MoveToNextAttributeFromValue

		[Test] // bug #550379
		public void MoveToNextAttributeFromValue ()
		{
			document.LoadXml ("<ul test='xxx'></ul>");
			XmlNodeReader nr = new XmlNodeReader (document);
			nr.Read ();
			//nr.Read (); // why twice?
			Assert.IsTrue (nr.MoveToFirstAttribute (), "#1");
			Assert.IsTrue (nr.ReadAttributeValue (), "#2");
			Assert.IsFalse (nr.MoveToNextAttribute (), "#3");
		}
开发者ID:Profit0004,项目名称:mono,代码行数:11,代码来源:XmlNodeReaderTests.cs

示例2: process_element

        private abstract_Element process_element( XmlNodeReader nodeReader, int current_page_count )
        {
            string type = String.Empty;
            string subtype = String.Empty;

            // Step through all the attributes until the type is found
            nodeReader.MoveToFirstAttribute();
            do
            {
                // Get the type attribute
                if ( nodeReader.Name.ToUpper().Trim() == "TYPE" )
                {
                    type = nodeReader.Value;
                }

                // Get the subtype attribute
                if ( nodeReader.Name.ToUpper().Trim() == "SUBTYPE" )
                {
                    subtype = nodeReader.Value;
                }

            } while (nodeReader.MoveToNextAttribute() );

            // Make sure a type was specified
            if ( type == String.Empty )
                return null;

            // Build the element
            abstract_Element newElement = Element_Factory.getElement( type, subtype );

            // If thie element was null, return null
            if (newElement == null)
                return null;

            // Set the page number for post back reasons
            newElement.Template_Page = current_page_count;

            // Some special logic here
            if ((newElement.Type == Element_Type.Type) && ( newElement.Display_SubType == "form" ))
            {
                (( Type_Format_Form_Element )newElement).Set_Postback("javascript:__doPostBack('newpagebutton" + current_page_count + "','')");
            }

            if ((newElement.Type == Element_Type.Title) && (newElement.Display_SubType == "form"))
            {
                complexMainTitleExists = true;
            }

            if ((newElement.Type == Element_Type.Note) && (newElement.Display_SubType == "complex"))
            {
                ((Note_Complex_Element)newElement).Include_Statement_Responsibility = !complexMainTitleExists;
            }

            // Now, step through all the attributes again
            nodeReader.MoveToFirstAttribute();
            do
            {

                    switch( nodeReader.Name.ToUpper().Trim() )
                    {
                        case "REPEATABLE":
                            bool repeatable;
                            if ( Boolean.TryParse( nodeReader.Value, out repeatable ))
                                newElement.Repeatable = repeatable;
                            break;
                        case "MANDATORY":
                            bool mandatory;
                            if (Boolean.TryParse(nodeReader.Value, out mandatory))
                                newElement.Mandatory = mandatory;
                            break;
                        case "READONLY":
                            bool isReadOnly;
                            if (Boolean.TryParse(nodeReader.Value, out isReadOnly))
                                newElement.Read_Only = isReadOnly;
                            break;
                        case "ACRONYM":
                            newElement.Acronym = nodeReader.Value;
                            break;
                    }
            } while (nodeReader.MoveToNextAttribute() );

            // Move back to the element, if there were attributes (should be)
            nodeReader.MoveToElement();

            // Is there element_data?
            if ( !nodeReader.IsEmptyElement )
            {
                nodeReader.Read();
                if (( nodeReader.NodeType == XmlNodeType.Element ) && ( nodeReader.Name.ToLower() == "element_data" ))
                {
                    // Create the new tree
                    StringWriter sw = new StringWriter();
                    XmlTextWriter tw = new XmlTextWriter( sw );
                    tw.WriteNode( nodeReader, true );
                    tw.Close();

                    // Let the element process this inner data
                    newElement.Read_XML( new XmlTextReader( new StringReader( sw.ToString() )));
                }
            }
//.........这里部分代码省略.........
开发者ID:Elkolt,项目名称:SobekCM-Web-Application,代码行数:101,代码来源:Template_XML_Reader.cs


注:本文中的System.Xml.XmlNodeReader.MoveToFirstAttribute方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。