私のサービスは、SOAPボディ内のルート要素として 'log-entry'を持つアクションILogging/LogMessageに対するSOAPリクエストを解析することになっています。そのためには、LogMessageRequest型のパラメータを予期するメソッドLogMessageがあります。2つのアクションで同じメッセージコントラクトを共有する
LogMessageRequestがログエントリとしてWrapperNameで設定MessageContractの属性があります。私はまた、SOAPボディのルート要素として「ログ・エントリ」でアクションILogging /たlogExceptionのための別のSOAPリクエストを期待してい
[MessageContract(WrapperName = "log-entry")]
public class LogMessageRequest
{
...
}
を。そのためには、メソッドLogExceptionとタイプLogExceptionRequestのparamがあります。
両方のSOAPアクションの違いは、 'log-entry'内の子要素 'message'が異なることです(LogMessageの場合、 'message'は文字列であり、例外では複雑なエンティティです)。
問題: LogMessageRequestとLogExceptionRequestの両方に同じラッパー名(log-entry)があるため、「LogMessageによって既にエクスポートされたログエントリ」というLogExceptionからの例外が発生します。
両方とも同じリクエストクラスを使用していて、タイプオブジェクトの 'message'を持っていました。しかし、それはうまく動作しません。
任意のポインタ? (途中でSOAP要求を変更する範囲はありません)。