1

サービスへの着信メッセージから SOAP ヘッダー属性を抽出する必要があります。私はサービススタックを使用していて、周りを見回していますが、どこにも良い答えが見つかりません. リクエスト オブジェクトから SOAP ヘッダー属性を取得する方法を誰か教えてもらえますか?

これが私のサービスです

public class NotificationServices : Service
{
    public GetAccountNotificationResponse Any (GetAccountNotification request)
    {
         //Do Some stuff Here!!!
         //Need to retrieve some header here
    }
}

どんな助けでも大歓迎です。また、それができないという事実を知っている場合は、私にも知らせてください。

ありがとうございました

4

1 に答える 1

1

ServiceStack v3.9.49の最新バージョンでは、IHttpRequest.GetSoapMessage()拡張メソッドを使用してリクエスト SOAP メッセージ (SOAP リクエスト用) にアクセスできます。

public class NotificationServices : Service
{
    public GetAccountNotificationResponse Any (GetAccountNotification request)
    {
         //Do Some stuff Here!!!
         var requestSoapMessage = base.Request.GetSoapMessage();
    }
}

シリアライゼーション/デシリアライゼーション wikiから:

IHttpRequest.GetSoapMessage()拡張メソッドを使用してサービスの SOAP エンドポイントでアクセスすると、生の WCF メッセージにアクセスできます。

Message requestMsg = base.Request.GetSoapMessage();

ServiceStack に SOAP リクエストのデシリアライズを完全にスキップするように指示するには、IRequiresSoapMessageインターフェースを Request DTO に追加します。

public class RawWcfMessage : IRequiresSoapMessage {
    public Message Message { get; set; }
}

public object Post(RawWcfMessage request) { 
    request.Message... //Raw WCF SOAP Message
}
于 2013-06-10T06:49:43.813 に答える