問題タブ [operationcontract]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
970 参照

wsdl - OperationContractAttribute.Action 値はどのように設定されますか?

サード パーティから提供された WSDL ファイルを使用してプロキシ クラスを作成するために、Visual Studio の [サービス参照の追加] オプションを使用しています。私は WSDL の 2 つのバージョンを取得しました。それらを「OLD」と「NEW」と呼びます。

WSDL ファイルは同じであると思われますが (新しいファイルはメソッドのバージョンが更新されています)、プロキシ クラスを作成すると、OperationContractAttribute.Action で異なる値が取得されます。

OLD wsdl では、次のようになります。

新しい wsdl では、次のようになります。

「アクション」値がどこから取得されたのかわかりません。

古い W​​SDL では値は有効ですが、新しい WSDL では完全に間違っており、WS でサービスを使用しようとすると例外が発生します。

OLD wsdl ファイルを見ると、同じ値の「soapAction」が表示されます。ここから取られているようです。ただし、NEW wsdl には、OLD wsdl とまったく同じ値があります。

誰か私に正しい場所を教えてもらえますか?

アップデート

「アクション」要素についてさらに読んだ後、新しい wsdl に表示される値が DEFAULT 値であることに気付きました ( https://msdn.microsoft.com/en-us/library/system.servicemodel.operationcontractattribute.アクション (v=vs.110).aspx )

ここで、古い wsdl ファイルで Action 値が正しい値になる理由を理解する必要があります (正しい操作で wsdl ファイルで定義されたsoapActionから推測しています)。デフォルト値は設定されていますか?

0 投票する
1 に答える
85 参照

xml - OperationContract 名前空間から継承された DataContract へのプレフィックスの変更

FORMULARIO のプレフィックス (Tem: TO Men1:) を次の XML から変更する必要があります。

問題は、Namespace Base をオーバーライドするために Namespace を OperationContract に設定できないことです。この追跡では、OperationContract は Xml の DataContract の親です。

私のコードは次のとおりです。