Freigeben über


Verwenden von Namespaces mit dem WSDL-Proxy im WCF LOB Adapter SDK

Das LOB-Adapter-SDK (Microsoft Windows Communication Foundation( WCF) generiert WSDL und Proxys für einen Adapter unter Verwendung von Werten, die vom Entwickler mithilfe des WCF LOB-Adapterentwicklungs-Assistenten oder im Code angegeben werden, indem die private Variable SERVICENAMESPACE und/oder die Namespace Eigenschaft des Adapters geändert werden.

Die schematypen und -elemente, die <im wsdl:types-Schema> definiert sind,><verwenden standardmäßig {OperationNamespace}. Wenn für einen bestimmten Typ ein überschriebener TypeNamespace-Wert im TypeMetadata-Objekt festgelegt ist, wird dieser Namespace für die komplexe Typ- und/oder Elementdefinition verwendet.

Auswirkungen auf WSDL

Die folgende Tabelle zeigt, wie sich die verschiedenen Namespaces in einem benutzerdefinierten Adapter auf die entsprechende WSDL auswirken. In der Tabelle ist ~{OperationNamespace} die Klassennamespacezuordnung eines URI. Wenn {OperationNamespace} beispielsweise "myscheme://a.b/c" ist, lautet ~{OperationNamespace} myscheme.a.b.c.

WSDL-Konstrukt Syntax
WSDL targetNamespace,

Xmlns:ts
{Custom} Adapter.Namespace
<wsdl:portType> {scheme}.~{OperationNamespace}
Name der WSDL-Eingabenachricht {scheme}.~{OperationNamespace}_{OperationName}_InputMessage
WSDL-Ausgabemeldungsname {scheme}.~{OperationNamespace}_{OperationName}_OutputMessage
<wsdl:types><schema> targetNamespace {scheme}://{OperationNamespace}
<element><complexType> Verwenden Sie {TypeNamespace}, wenn der Wert nicht NULL oder leer ist.

Auswirkungen auf den Proxy

Drei verschiedene Attribute im Proxy sind von Namespaces betroffen:

  • [System.ServiceModel.ServiceContractAttribute(Name="{scheme}.~{OperationNamespace}", Namespace="{Custom}Adapter.Namespace"]

  • [System.ServiceModel.MessageContractAttribute(WrapperName="DivideResponse", WrapperNamespace="{scheme}://{OperationNamespace}", IsWrapped=true)]

  • [System.ServiceModel.MessageBodyMemberAttribute(Namespace="{scheme}://{TypeNamespace}", Order=0)]

Weitere Informationen

Bewährte Methoden für die Entwicklung mithilfe des WCF LOB Adapter SDK