Condividi tramite


Supporto dell'associazione all'elemento appinfo

Questo argomento è specifico di una tecnologia legacy. Servizi Web XML e client di servizi Web XML devono essere creati attualmente tramite Windows Communication Foundation.

In .NET Framework non è incluso alcun supporto per l'associazione all'elemento <appinfo>.

Durante la generazione di codice sorgente da un documento XML Schema, Xsd.exe ignora l'elemento <appinfo> e il relativo contenuto.

Descrizione

Durante la generazione di codice sorgente da un documento XML Schema, Xsd.exe ignora l'elemento <appinfo> e il relativo contenuto. Ciò accade anche per l'elemento padre dell'elemento <appinfo>, <annotation>.

Un'eccezione è rappresentata dalla corrispondenza tra le due seguenti entità:

Per memorizzare un set di mapping tra i prefissi e gli spazi dei nomi che essi rappresentano, viene utilizzato un oggetto XmlSerializerNamespaces. Il testo dell'elemento annotation/appinfo/keepNamespaceDeclarations corrisponde al nome del campo o della proprietà XmlSerializerNamespaces. Questa conversione viene eseguita in entrambe le direzioni, da file xsd nel codice e viceversa, in modo da poter controllare i prefissi degli spazi dei nomi.

Esempio

Classe C# di input:

public class MyClass {
    [XmlAttribute]
    public string name;
    
    public string xpath;
    
    [XmlNamespaceDeclarationsAttribute]
    public XmlSerializerNamespaces xmlns;
}

Documento XML Schema generato da un assembly compilato dal codice sorgente C# precedente:

<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="MyClass" nillable="true" type="MyClass" />
  <xs:complexType name="MyClass">
    <xs:annotation>
      <xs:appinfo>
        <keepNamespaceDeclarations>xmlns</keepNamespaceDeclarations>
      </xs:appinfo>
    </xs:annotation>
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" name="xpath" type="xs:string" />
    </xs:sequence>
    <xs:attribute name="name" type="xs:string" />
  </xs:complexType>
</xs:schema>

La classe C# generata dal documento XML Schema precedente è in realtà identica alla classe C# originale dalla quale è stato generato lo schema XML.

Attributi possibili Supporto per l'associazione

source

Poiché in .NET Framework l'elemento <appinfo> non viene associato, non viene associato neanche l'attributo source di tale elemento.

Elementi padre possibili: <annotation>

Elementi figlio possibili: illimitati

Vedere anche

Riferimento

XmlSchemaAppInfo