Compartilhar via


XmlArrayItemAttribute.Form Propriedade

Definição

Obtém ou define um valor que indica se o nome do elemento XML gerado é qualificado.

public:
 property System::Xml::Schema::XmlSchemaForm Form { System::Xml::Schema::XmlSchemaForm get(); void set(System::Xml::Schema::XmlSchemaForm value); };
public System.Xml.Schema.XmlSchemaForm Form { get; set; }
member this.Form : System.Xml.Schema.XmlSchemaForm with get, set
Public Property Form As XmlSchemaForm

Valor da propriedade

Um dos XmlSchemaForm valores. O padrão é XmlSchemaForm.None.

Exceções

A Form propriedade é definida XmlSchemaForm.Unqualified como e um Namespace valor é especificado.

Exemplos

O exemplo a seguir define a Form propriedade da classe XmlSchemaForm.Unqualifiedcomo Vehicle , e a Form propriedade da Car classe como XmlSchemaForm.Qualified.

public class Transportation
{
   [XmlArray("Vehicles")]
   // Specifies the Form property value.
   [XmlArrayItem(typeof(Vehicle),
   Form = XmlSchemaForm.Unqualified),
   XmlArrayItem(typeof(Car),
   Form = XmlSchemaForm.Qualified)]
   public Vehicle[] MyVehicles;
}

public class Vehicle
{
   public string id;
}

public class Car:Vehicle
{
   public string Maker;
}
Public Class Transportation
    ' Specify the Form property value.
    <XmlArray("Vehicles"), _
     XmlArrayItem(GetType(Vehicle), Form := XmlSchemaForm.Unqualified), _
     XmlArrayItem(GetType(Car), Form := XmlSchemaForm.Qualified)> _
    Public MyVehicles() As Vehicle
End Class

Public Class Vehicle
    Public id As String
End Class

Public Class Car
    Inherits Vehicle
    Public Maker As String
End Class

Comentários

A Form propriedade determina se um nome de elemento XML é qualificado, com base nos namespaces de especificação do World Wide Web Consortium em XML.

Se a Namespace propriedade estiver definida como qualquer valor, tentar definir a Form propriedade para XmlSchemaForm.Unqualified gerar uma exceção.

O valor XmlSchemaForm.Nonepadrão instrui a XmlSerializer verificar o esquema do documento XML para determinar se o namespace é qualificado. Para elementos, verifica o XmlSerializer valor do atributo elementFormDefaultde elemento de esquema. Para atributos, ele verifica o valor do atributo attributeFormDefaultde elemento de esquema. Por exemplo, o esquema XML a seguir indica que o Name elemento é qualificado, enquanto o Number elemento não é qualificado.

<schema elementFormDefault="qualified"
attributeFormDefault="unqualified">
   <element name="Name"/>
   <attribute name="Number"/>
</schema>

Aplica-se a