Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ ExportCollectionDataContract()

void System.Runtime.Serialization.SchemaExporter.ExportCollectionDataContract ( CollectionDataContract collectionDataContract,
XmlSchema schema )
inlineprivate

Definition at line 538 of file SchemaExporter.cs.

539 {
543 XmlElement xmlElement = null;
544 XmlElement xmlElement2 = null;
545 if (collectionDataContract.UnderlyingType.IsGenericType && CollectionDataContract.IsCollectionDataContract(collectionDataContract.UnderlyingType))
546 {
547 xmlElement = ExportGenericInfo(collectionDataContract.UnderlyingType, "GenericType", "http://schemas.microsoft.com/2003/10/Serialization/");
548 }
549 if (collectionDataContract.IsDictionary)
550 {
552 }
559 if (collectionDataContract.IsDictionary)
560 {
561 ClassDataContract classDataContract = collectionDataContract.ItemContract as ClassDataContract;
564 foreach (DataMember member in classDataContract.Members)
565 {
567 xmlSchemaElement2.Name = member.Name;
569 SchemaHelper.AddElementForm(xmlSchemaElement2, schema);
570 if (member.IsNullable)
571 {
573 }
576 }
579 }
580 else
581 {
582 if (collectionDataContract.IsItemTypeNullable)
583 {
585 }
588 }
589 SchemaHelper.AddElementForm(xmlSchemaElement, schema);
592 if (collectionDataContract.IsReference)
593 {
595 }
596 }
void Add(TKey key, TValue value)
DataContract GetMemberTypeDataContract(DataMember dataMember)
DataContract GetItemTypeDataContract(CollectionDataContract collectionContract)
void AddReferenceAttributes(XmlSchemaObjectCollection attributes, XmlSchema schema)
XmlElement ExportGenericInfo(Type clrType, string elementName, string elementNs)
XmlSchemaAnnotation GetSchemaAnnotation(XmlQualifiedName annotationQualifiedName, string innerText, XmlSchema schema)
void SetElementType(XmlSchemaElement element, DataContract dataContract, XmlSchema schema)

References System.Runtime.Serialization.SchemaExporter._dataContractSet, System.Collections.Generic.Dictionary< TKey, TValue >.Add(), System.Runtime.Serialization.SchemaHelper.AddElementForm(), System.Runtime.Serialization.SchemaExporter.AddReferenceAttributes(), System.Runtime.Serialization.Dictionary, System.Runtime.Serialization.SchemaExporter.ExportGenericInfo(), System.Runtime.Serialization.SchemaExporter.ExportIsDictionary(), System.Runtime.Serialization.SchemaExporter.ExportSurrogateData(), System.Runtime.Serialization.DataContractSet.GetItemTypeDataContract(), System.Runtime.Serialization.DataContractSet.GetMemberTypeDataContract(), System.Runtime.Serialization.SchemaExporter.GetSchemaAnnotation(), System.Runtime.Serialization.CollectionDataContract.IsCollectionDataContract(), System.Runtime.Serialization.DataMember.IsNullable, System.Runtime.Serialization.DataMember.Name, and System.Runtime.Serialization.SchemaExporter.SetElementType().

Referenced by System.Runtime.Serialization.SchemaExporter.ExportDataContract().