Order Property
Collapse the table of content
Expand the table of content

DataMemberAttribute.Order Property

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

Gets or sets the order of serialization and deserialization of a member.

Namespace:  System.Runtime.Serialization
Assembly:  System.Runtime.Serialization (in System.Runtime.Serialization.dll)

public int Order { get; set; }

Property Value

Type: System.Int32
The numeric order of serialization or deserialization.

If a type requires that one member be serialized or deserialized before another, use this property to specify an order other than the order in which data is received in the serialized XML. The basic rules for ordering data members are:

  • If a data contract type is a part of an inheritance hierarchy, data members of its base types are always first in the order.

  • Next in order are the current type’s data members that do not have the Order property of the DataMemberAttribute attribute set, in alphabetical order.

  • Next are any data members that have the Order property of the DataMemberAttribute attribute set. These are ordered by the value of the Order property first and then alphabetically if there is more than one member of a certain Order value. Order values may be skipped. Alphabetical order is established by calling the CompareOrdinal method.


	    // Define the data contract.
    	[DataContract(Name = "Customer" , Namespace = "http://www.contoso.com" ) ]
    	public class User
    	{
        	[DataMember(Name = "Last" , EmitDefaultValue = true , IsRequired = true , Order = 2 )]
       		public string Name { get; set; }

        	[DataMember(Order = 1)]
        	public int Age { get; set; }

        	public User() { }

        	public User(string newName, int newAge)
        	{
            		Name = newName;
            		Age = newAge;
        	}
    	}


Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone

Show:
© 2016 Microsoft