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

ImportMembersMapping() public method

public ImportMembersMapping ( string name, string ns, SoapSchemaMember members, bool hasWrapperElement, Type baseType, bool baseTypeCanBeIndirect ) : XmlMembersMapping
name string
ns string
members SoapSchemaMember
hasWrapperElement bool
baseType System.Type
baseTypeCanBeIndirect bool
return XmlMembersMapping
        public XmlMembersMapping ImportMembersMapping(string name, string ns, SoapSchemaMember[] members, bool hasWrapperElement, Type baseType, bool baseTypeCanBeIndirect) {
            XmlSchemaComplexType type = new XmlSchemaComplexType();
            XmlSchemaSequence seq = new XmlSchemaSequence();
            type.Particle = seq;
            foreach (SoapSchemaMember member in members) {
                XmlSchemaElement element = new XmlSchemaElement();
                element.Name = member.MemberName;
                element.SchemaTypeName = member.MemberType;
                seq.Items.Add(element);
            }

            CodeIdentifiers identifiers = new CodeIdentifiers();
            identifiers.UseCamelCasing = true;
            MembersMapping mapping = new MembersMapping();
            mapping.TypeDesc = Scope.GetTypeDesc(typeof(object[]));
            mapping.Members = ImportTypeMembers(type, ns, identifiers);
            mapping.HasWrapperElement = hasWrapperElement;
            
            if (baseType != null) {
                for (int i = 0; i < mapping.Members.Length; i++) {
                    MemberMapping member = mapping.Members[i];
                    if (member.Accessor.Mapping is StructMapping)
                        MakeDerived((StructMapping)member.Accessor.Mapping, baseType, baseTypeCanBeIndirect);
                }
            }
            ElementAccessor accessor = new ElementAccessor();
            accessor.IsSoap = true;
            accessor.Name = name;
            accessor.Namespace = ns;
            accessor.Mapping = mapping;
            accessor.IsNullable = false;
            accessor.Form = XmlSchemaForm.Qualified;

            return new XmlMembersMapping(Scope, accessor, XmlMappingAccess.Read | XmlMappingAccess.Write);
        }

Same methods

SoapSchemaImporter::ImportMembersMapping ( string name, string ns, SoapSchemaMember member ) : XmlMembersMapping
SoapSchemaImporter::ImportMembersMapping ( string name, string ns, SoapSchemaMember members, bool hasWrapperElement ) : XmlMembersMapping