Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dieses Thema bezieht sich auf eine veraltete Technologie. XML-Webdienste und XML-Webdienstclients sollten nun mithilfe der folgenden Technologie erstellt werden: Windows Communication Foundation.
.NET Framework stellt keine Bindungsunterstützung für das <appinfo>-Element bereit.
Beim Generieren von Quellcode aus einem XML-Schemadokument ignoriert Xsd.exe das <appinfo>-Element und dessen Inhalt.
Erklärung
Beim Generieren von Quellcode aus einem XML-Schemadokument ignoriert Xsd.exe das <appinfo>-Element und dessen Inhalt. Das Gleiche gilt für das übergeordnete Element des <appinfo>-Elements, d. h. für <annotation>.
Eine Ausnahme ist die Korrespondenz zwischen den folgenden zwei Entitäten:
Ein Attribut des Typs XmlNamespaceDeclarationsAttribute, das auf ein Feld oder eine Eigenschaft des Typs XmlSerializerNamespaces angewendet wurde.
Ein für .NET Framework spezifisches XML-Element mit dem Namen <keepNamespaceDeclarations>, das im <appinfo>-Element enthalten ist.
Ein XmlSerializerNamespaces-Objekt wird verwendet, um einen Satz an Zuordnungen zwischen Namespaces und den sie darstellenden Päfixen zu speichern. Der Text des annotation/appinfo/keepNamespaceDeclarations-Elements ist der Name des XmlSerializerNamespaces-Felds oder der entsprechenden Eigenschaft. Diese Übersetzung erfolgt in beide Richtungen – von der XSD-Datei in Code und umgekehrt –, sodass Namespacepräfixe gesteuert werden können.
Beispiel
Eingabe C#-Klasse:
public class MyClass {
[XmlAttribute]
public string name;
public string xpath;
[XmlNamespaceDeclarationsAttribute]
public XmlSerializerNamespaces xmlns;
}
Ein XML-Schemadokument, das aus einer Assembly generiert wurde, die ihrerseits aus dem vorhergehenden C#-Quellcode kompiliert wurde.
<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>
Die C#-Klasse, die aus dem vorhergehenden XML-Schemadokument generiert wurde, ist identisch mit der ursprünglichen C#-Klasse, aus der das XML-Schema generiert worden war.
| Mögliche Attribute | Bindungsunterstützung |
|---|---|
source |
Da .NET Framework das <appinfo>-Element nicht bindet, bindet es auch die source-Attribute des Elements nicht. |
Mögliche übergeordnete Elemente: <annotation>
Mögliche untergeordnete Elemente: unbegrenzt