如何从ASP.NET中的soap异常中提取内部异常?
发布时间:2020-05-24 00:10:57 所属栏目:asp.Net 来源:互联网
导读:我有一个这样简单的web服务操作: [WebMethod] public string HelloWorld() { throw new Exception(HelloWorldException); return Hello World; } 然后我有一个消费Web服务的客户端应用程序,然后调用该操作.显然会抛出异常:-) try
|
我有一个这样简单的web服务操作: [WebMethod]
public string HelloWorld()
{
throw new Exception("HelloWorldException");
return "Hello World";
}
然后我有一个消费Web服务的客户端应用程序,然后调用该操作.显然会抛出异常:-) try
{
hwservicens.Service1 service1 = new hwservicens.Service1();
service1.HelloWorld();
}
catch(Exception e)
{
Console.WriteLine(e.ToString());
}
在我的catch块中,我想做的是提取实际异常的消息在我的代码中使用它.捕获的异常是一个SoapException,这是很好的,但它的Message属性是这样的… System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.Exception: HelloWorldException at WebService1.Service1.HelloWorld() in C:svnrootVordurWebService1Service1.asmx.cs:line 27 --- End of inner exception stack trace --- …而InnerException为null. 我想做的是提取InnerException(我的示例中的HelloWorldException文本)的Message属性,任何人都可以帮助吗?如果可以避免,请不要建议解析SoapException的Message属性. 解决方法不幸的是,我不认为这是可能的.您在Web服务代码中提升的异常正在编码为Soap Fault,然后将其作为字符串传递回您的客户端代码. 您在SoapException消息中看到的仅仅是Soap错误中的文本,它不会被转换回异常,而只是存储为文本. 如果您希望在错误的条件下返回有用的信息,那么我建议从您的Web服务返回一个可以包含您的信息的“错误”属性的自定义类. [WebMethod]
public ResponseClass HelloWorld()
{
ResponseClass c = new ResponseClass();
try
{
throw new Exception("Exception Text");
// The following would be returned on a success
c.WasError = false;
c.ReturnValue = "Hello World";
}
catch(Exception e)
{
c.WasError = true;
c.ErrorMessage = e.Message;
return c;
}
} (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – IE7和8随机挂起CSS图像
- asp.net-core – ABP框架中的集成Windows身份验证
- asp.net-mvc – ASP.NET MVC会话状态
- asp.net-mvc – 在VS2012中调试MVC应用程序尝试启动IIS Exp
- asp.net-mvc – Asp.Net MVC和Session
- 使用asp.net中的web api通过http进行身份验证
- regex – RegularExpressionAttribute – 如何使它不区分大
- IIS7 – 一次只能提供一页.这是一个让我crazy!
- asp.net-mvc – 根据浏览器接受语言自动设置uiCulture
- asp.net-mvc-3 – MVC3:如何在HtmlHelper扩展中以编程方式
推荐文章
站长推荐
- asp.net-mvc-3 – 在Post上,下拉列表SelectList.
- 有标签的ASP.NET WebControl吗?
- asp.net-core – .NET Core SDK安装程序无法在Wi
- asp.net – 从通用列表中将ListItem添加到DropDo
- asp.net-mvc – 依赖于另一个字段的属性
- 有什么好的参考或工具可用于将ASP转换为ASP.NET?
- 如何动态地从ASP.NET MVC控制器获取数据到jQuery
- 如何配置IIS 7以使用子目录作为默认文档?
- asp.net – 两个DLL中都存在“ModelClientValida
- asp.net-mvc – 如何在扩展方法中使用HTML帮助器
热点阅读
