Share via

IXmlSerializable.GetSchema Method


This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the XmlSchemaProviderAttribute to the class.

 System::Xml::Schema::XmlSchema ^ GetSchema();
public System.Xml.Schema.XmlSchema GetSchema ();
public System.Xml.Schema.XmlSchema? GetSchema ();
abstract member GetSchema : unit -> System.Xml.Schema.XmlSchema
Public Function GetSchema () As XmlSchema


An XmlSchema that describes the XML representation of the object that is produced by the WriteXml(XmlWriter) method and consumed by the ReadXml(XmlReader) method.


When serializing or deserializing an object, the XmlSerializer class does not perform XML validation. For this reason, it is often safe to omit schema information by providing a trivial implementation of this method, for example by returning null (Nothing in Visual Basic).

If providing schema information is necessary, you should use the XmlSchemaProviderAttribute attribute. The GetSchema method should still return null (or Nothing).

Some .NET Framework types as well as legacy custom types implementing the IXmlSerializable interface may be using GetSchema instead of XmlSchemaProvider. In this case, the method returns an accurate XML schema that describes the XML representation of the object generated by the WriteXml method.

Applies to