首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

访问出错时怎么能返回给客户端带Fault标签的信息?

2014-01-28 
访问出错时怎么能返回给客户端带Fault标签的信息?A公司是客户端,B公司是服务器端。 我们在给B公司做web serv

访问出错时怎么能返回给客户端带Fault标签的信息?

A公司是客户端,B公司是服务器端。
我们在给B公司做web service程序。

A公司发送给信息,访问B公司的web service提供的接口函数,
比如说,函数WsIFfnc(),接口函数的返回值类型是String型。
到这为止,通过写代码都可以实现。

但现在A公司说,他们跟其他公司的web service的时候,如果出错。
返回的不是String型。是这样的信息。

XML code
HTTP/1.0 500 Internal Server Error Content-Type:text/xml;charset="utf-8" content-Length:nnnnn <SOAP-ENV:Envelope         xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"         SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">         <SOAP-ENV:Body>                   <SOAP-ENV:Fault>                                   <faultcode>Client.AuthenticationFailure </faultcode>                                   <faultstring>认证失败 </faultstring>                                   <faultactor>http://www.partner.com/gateway </faultactor>                   </SOAP-ENV:Fault>           </SOAP-ENV:Body> </SOAP-ENV:Envelope> 

要求我们也做出出错时,返回给A公司这样的信息,怎么做?
代码需要怎么写?

------解决方法--------------------------------------------------------
如果你用的是普通web service而不是WCF的话,解决这个问题很简单。
所有从web service抛出的异常都会被翻译的类似的soap结构。
例如
C# code
        [WebMethod]        public string HelloWorld()        {            Exception ex = new Exception("this is error");            throw ex;        }

        

热点排行