0 out of 2 rated this helpful - Rate this topic

DataMemberAttribute.IsRequired Property

Gets or sets a value that instructs the serialization engine that the member must be present when reading or deserializing.

Namespace:  System.Runtime.Serialization
Assembly:  System.Runtime.Serialization (in System.Runtime.Serialization.dll)
public bool IsRequired { get; set; }

Property Value

Type: System.Boolean
true, if the member is required; otherwise, false.
Exception Condition
SerializationException

the member is not present.

The property is used for ensuring compatibility with future versions of a type. For more information, see Data Contract Versioning and Best Practices: Data Contract Versioning.

.NET Framework

Supported in: 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Portable Class Library

Supported in: Portable Class Library

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Did you find this helpful?
(1500 characters remaining)
Community Content Add
Annotations FAQ
DataMember extended to DataAnnotation
It would also be nice if DataMember could integrate some concepts of the DataAnnotation.
It would improve performance since validation would happen during serialization process and enable generation of proxies that integrate such concepts. Note that Xml Schema already support such concepts.
Default value
As I can see from generated code in service reference default value is FALSE
Default value of IsRequired?
It would be nice to specific in the docs whether IsRequired comes with true or false by default.