XmlArrayAttribute.IsNullable Property

Definition

Gets or sets a value that indicates whether the XmlSerializer must serialize a member as an empty XML tag with the xsi:nil attribute set to true.

C#
public bool IsNullable { get; set; }

Property Value

true if the XmlSerializer generates the xsi:nil attribute; otherwise, false.

Examples

The following example contains two arrays: one with the IsNullable property set to true, and another with the IsNullable property set to false.

C#
public class MyClass
{
   [XmlArray (IsNullable = true)]
   public string [] IsNullableIsTrueArray;

   [XmlArray (IsNullable = false)]
   public string [] IsNullableIsFalseArray;
}

Remarks

The XML schema specification for structures allows an XML document to explicitly signal that an element's content is missing. Such an element contains the attribute xsi:nil set to true. For more information, see the World Wide Web Consortium specification titled XML Schema Part 1: Structures.

If the IsNullable property is set to true, the xsi:nil attribute is generated for class members that have been set to null. For example, if you set a field named MyStringArray to null, the XmlSerializer generates the following XML code.

<MyStringArray xsi:nil = "true" />  

If the IsNullable property is false, no XML element is generated.

Note

You cannot apply the IsNullable property to a member typed as a value type because a value type cannot contain null.

Applies to

Product Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1
UWP 10.0