System.Xml.Schema.SchemaNames.SchemaTypeFromRoot C# (CSharp) Méthode

SchemaTypeFromRoot() public méthode

public SchemaTypeFromRoot ( string localName, string ns ) : SchemaType
localName string
ns string
Résultat SchemaType
        public SchemaType SchemaTypeFromRoot(string localName, string ns) {
            if (IsXSDRoot(localName, ns)) {
                return SchemaType.XSD;
            }
            else if (IsXDRRoot(localName, XmlSchemaDatatype.XdrCanonizeUri(ns, nameTable, this))) {
                return SchemaType.XDR;
            }
            else {
                return SchemaType.None;
            }
        }

Usage Example

        public void StartParsing(XmlReader reader, string targetNamespace)
        {
            this.reader      = reader;
            positionInfo     = PositionInfo.GetPositionInfo(reader);
            namespaceManager = reader.NamespaceManager;
            if (namespaceManager == null)
            {
                namespaceManager    = new XmlNamespaceManager(nameTable);
                isProcessNamespaces = true;
            }
            else
            {
                isProcessNamespaces = false;
            }
            while (reader.NodeType != XmlNodeType.Element && reader.Read())
            {
            }

            markupDepth    = int.MaxValue;
            schemaXmlDepth = reader.Depth;
            SchemaType rootType = schemaNames.SchemaTypeFromRoot(reader.LocalName, reader.NamespaceURI);

            string code;

            if (!CheckSchemaRoot(rootType, out code))
            {
                throw new XmlSchemaException(code, reader.BaseURI, positionInfo.LineNumber, positionInfo.LinePosition);
            }

            if (schemaType == SchemaType.XSD)
            {
                schema         = new XmlSchema();
                schema.BaseUri = new Uri(reader.BaseURI, UriKind.RelativeOrAbsolute);
                builder        = new XsdBuilder(reader, namespaceManager, schema, nameTable, schemaNames, eventHandler);
            }
            else
            {
                Debug.Assert(schemaType == SchemaType.XDR);
                xdrSchema            = new SchemaInfo();
                xdrSchema.SchemaType = SchemaType.XDR;
                builder = new XdrBuilder(reader, namespaceManager, xdrSchema, targetNamespace, nameTable, schemaNames, eventHandler);
                ((XdrBuilder)builder).XmlResolver = xmlResolver;
            }
        }
All Usage Examples Of System.Xml.Schema.SchemaNames::SchemaTypeFromRoot