System.Xml.Serialization.SoapSchemaImporter.ImportDerivedTypeMapping C# (CSharp) Method

ImportDerivedTypeMapping() public method

public ImportDerivedTypeMapping ( XmlQualifiedName name, Type baseType, bool baseTypeCanBeIndirect ) : XmlTypeMapping
name System.Xml.XmlQualifiedName
baseType System.Type
baseTypeCanBeIndirect bool
return XmlTypeMapping
        public XmlTypeMapping ImportDerivedTypeMapping(XmlQualifiedName name, Type baseType, bool baseTypeCanBeIndirect) 
        {
            TypeMapping mapping = ImportType(name, false);
            if (mapping is StructMapping) {
                MakeDerived((StructMapping)mapping, baseType, baseTypeCanBeIndirect);
            }
            else if (baseType != null)
                throw new InvalidOperationException(Res.GetString(Res.XmlPrimitiveBaseType, name.Name, name.Namespace, baseType.FullName));
            ElementAccessor accessor = new ElementAccessor();
            accessor.IsSoap = true;
            accessor.Name = name.Name;
            accessor.Namespace = name.Namespace;
            accessor.Mapping = mapping;
            accessor.IsNullable = true;
            accessor.Form = XmlSchemaForm.Qualified;

            return new XmlTypeMapping(Scope, accessor);
        }