WCF LOB アダプター SDK の WSDL-Proxy で名前空間を使用する
Microsoft Windows Communication Foundation (WCF) 基幹業務 (LOB) アダプター SDK は、WCF LOB アダプター開発ウィザードを使用して開発者が指定した値、または SERVICENAMESPACE プライベート変数やアダプターの プロパティを変更してコードで指定された値を使用して、アダプターの WSDL とプロキシを Namespace
生成します。
wsdl:types><スキーマ内で定義されている<スキーマ>型と要素では、既定で {OperationNamespace} が使用されます。 特定の型に TypeMetadata オブジェクトにオーバーライドされた TypeNamespace が設定されている場合、その名前空間は複合型または要素定義に使用されます。
WSDL への影響
次の表は、カスタム アダプターのさまざまな名前空間が対応する WSDL にどのように影響するかを示しています。 テーブルの ~{OperationNamespace} は URI のクラス名前空間マッピングです。たとえば、{OperationNamespace} が "myscheme://a.b/c" の場合、~{OperationNamespace} は myscheme.a.b.c になります。
WSDL コンストラクト | 構文 |
---|---|
WSDL targetNamespace、 Xmlns:ts |
{Custom}Adapter.Namespace |
<wsdl:portType> | {scheme}.~{OperationNamespace} |
WSDL 入力メッセージ名 | {scheme}.~{OperationNamespace}_{OperationName}_InputMessage |
WSDL 出力メッセージ名 | {scheme}.~{OperationNamespace}_{OperationName}_OutputMessage |
<wsdl:types><スキーマ> targetNamespace | {scheme}://{OperationNamespace} |
<element><complexType> | 値が null または空でない場合は、{TypeNamespace} を使用します。 |
プロキシへの影響
プロキシ内の 3 つの異なる属性が名前空間の影響を受けます。
[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)]