DataContractAttribute.IsReference Property

Microsoft Silverlight will reach end of support after October 2021. Learn more.

Gets or sets a value that indicates whether to preserve object reference data.

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


Public Property IsReference As Boolean
public bool IsReference { get; set; }

Property Value

Type: System.Boolean
true to keep object reference data using standard XML; otherwise, false. The default is false.


Use the IsReference property to instruct the DataContractSerializer to insert XML constructs that preserve object reference information.


    ' Define the data contract.
    <DataContract(Name := "Customer", Namespace := "", IsReference := True)> _
    Public Class User
        Private privateName As String
        <DataMember(Name := "Last", EmitDefaultValue := True, IsRequired := True, Order := 2)> _
        Public Property Name() As String
                Return privateName
            End Get
            Set(ByVal value As String)
                privateName = value
            End Set
        End Property

        Private privateAge As Integer
        <DataMember(Order := 1)> _
        Public Property Age() As Integer
                Return privateAge
            End Get
            Set(ByVal value As Integer)
                privateAge = value
            End Set
        End Property

        Public Sub New()
        End Sub

        Public Sub New(ByVal newName As String, ByVal newAge As Integer)
            Name = newName
            Age = newAge
        End Sub
    End Class
// Define the data contract.
[DataContract(Name = "Customer", Namespace = "", IsReference = true)]
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;

Version Information


Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Windows Phone OS 7.0


For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.