EmitDefaultValue Property
Collapse the table of content
Expand the table of content

DataMemberAttribute.EmitDefaultValue Property

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

Gets or sets a value that specifies whether to serialize the default value for a field or property being serialized.

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

'Declaration
Public Property EmitDefaultValue As Boolean

Property Value

Type: System.Boolean
true if the default value for a member should be generated in the serialization stream; otherwise, false. The default is true.

In .NET Framework, types have a concept of default values. For example, for any reference type the default value is Nothing (Nothing in Visual Basic), and for an integer type it is 0. It is occasionally desirable to omit a data member from the serialized data when it is set to its default value. To do this, set the EmitDefaultValue property to false (it is true by default).

NoteNote:

Setting the EmitDefaultValue property to false is not a recommended practice. It should be done only if there is a specific requirement to do so (such as for interoperability or to reduce data size).


		' Define the data contract.
		<DataContract(Name := "Customer", Namespace := "http://www.contoso.com")> _
		Public Class User
			Private privateName As String
			<DataMember(Name := "Last", EmitDefaultValue := True, IsRequired := True, Order := 2)> _
			Public Property Name() As String
				Get
					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
				Get
					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


Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone

Show:
© 2017 Microsoft