System.Xml.XmlWellFormedWriter.WriteFullEndElement C# (CSharp) Méthode

WriteFullEndElement() public méthode

public WriteFullEndElement ( ) : void
Résultat void
        public override void WriteFullEndElement()
        {
            try
            {
                AdvanceState(Token.EndElement);

                int top = _elemTop;
                if (top == 0)
                {
                    throw new XmlException(SR.Xml_NoStartTag, string.Empty);
                }

                // write end tag
                if (_rawWriter != null)
                {
                    _elemScopeStack[top].WriteFullEndElement(_rawWriter);
                }
                else
                {
                    _writer.WriteFullEndElement();
                }

                // pop namespaces
                int prevNsTop = _elemScopeStack[top].prevNSTop;
                if (_useNsHashtable && prevNsTop < _nsTop)
                {
                    PopNamespaces(prevNsTop + 1, _nsTop);
                }
                _nsTop = prevNsTop;
                _elemTop = --top;

                // check "one root element" condition for ConformanceLevel.Document
                if (top == 0)
                {
                    if (_conformanceLevel == ConformanceLevel.Document)
                    {
                        _currentState = State.AfterRootEle;
                    }
                    else
                    {
                        _currentState = State.TopLevel;
                    }
                }
            }
            catch
            {
                _currentState = State.Error;
                throw;
            }
        }