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