System.Xml.XsdValidatingReader.ReadAheadForMemberType C# (CSharp) Méthode

ReadAheadForMemberType() private méthode

private ReadAheadForMemberType ( ) : void
Résultat void
        private void ReadAheadForMemberType()
        {
            while (_coreReader.Read())
            {
                switch (_coreReader.NodeType)
                {
                    case XmlNodeType.Element:
                        Debug.Assert(false); //Should not happen as the caching reader does not cache elements in simple content
                        break;

                    case XmlNodeType.Text:
                    case XmlNodeType.CDATA:
                        _validator.ValidateText(GetStringValue);
                        break;

                    case XmlNodeType.Whitespace:
                    case XmlNodeType.SignificantWhitespace:
                        _validator.ValidateWhitespace(GetStringValue);
                        break;

                    case XmlNodeType.Comment:
                    case XmlNodeType.ProcessingInstruction:
                        break;

                    case XmlNodeType.EndElement:
                        _atomicValue = _validator.ValidateEndElement(_xmlSchemaInfo); //?? pop namespaceManager scope
                        _originalAtomicValueString = GetOriginalAtomicValueStringOfElement();
                        if (_atomicValue == null)
                        { //Invalid marker
                            _atomicValue = this;
                        }
                        else if (_xmlSchemaInfo.IsDefault)
                        { //The atomicValue returned is a default value
                            _cachingReader.SwitchTextNodeAndEndElement(_xmlSchemaInfo.XmlType.ValueConverter.ToString(_atomicValue), _originalAtomicValueString);
                        }
                        goto breakWhile;
                }
                continue;
            breakWhile:
                break;
            }
        }
XsdValidatingReader