在ASMX Web服务中自定义SOAP响应

时间:2016-11-24 04:26:56

标签: c# web-services asmx

这是调用我的webservice后的响应

  function loginbtn()
 {
 $(".logininfo").css("display","block");
 $(".logininfo").html('<img src="icon/loader.gif" width="100">');
 var usrname=$("#usrname").val();
 var usrpass=$("#usrpass").val();
 var login="usrname="+usrname+"&usrpass="+usrpass;
 if(usrname==='' || usrpass==='')
 {
     $(".logininfo").text('နောက်တစ်ကြိမ်ပြန်စစ်ပေးပါ');
 }else
 {
     $.ajax({
        url:"authorized/ajax/process.php",
        type:"POST",
        data: login,
    cache:false,
    success: function(data)
    {
        if(data!=='match')
        {
        $(".logininfo").html(data);
        $("#usrname").val('');
        $("#usrpass").val('');
        }else
        {
            window.location.href= "https://www.google.com";
        }
    }
     });
 }
}

首先,我想删除<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><unregisterResponse xmlns="ns2=http://gate.com"><unregisterResult><returncode>1</returncode><returndesc>SUCCESS</returndesc></unregisterResult></unregisterResponse></soap:Body></soap:Envelope>

中的xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"

其次,我想使用该命名空间将soap:Envelope更改为unregisterResponse

第三,我想将ns2:returnsoap:Envelop更改为soap:BodyS:Envelop

最后他们看起来像这样:

S:Body

我尝试了什么:

  • 我尝试将<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"><S:Body><ns2:unregisterResponse xmlns:ns2="http://gate.com"><return><returncode>1</returncode><returndesc>SUCCESS</returndesc></return></unregisterResponse></S:Body></S:Envelope> 放在我的返回类之上,但在我的服务中有多个返回类,我只能将1个类命名为[XmlRoot("return")]

  • 我尝试return修正上述错误但[XmlRoot("return", Namespace = "http://gate.com/unregister")]变为<return> xmlns,操作员不允许

请帮我解决这个问题,谢谢。

0 个答案:

没有答案
相关问题