在.NET Web服务中,SoapException.Message属性如何易于读取?

BWH*_*zel 6 c# asp.net web-services exception

我正在编写一个ASP.NET Web服务,并抛出一个带有消息的SoapException:

throw new SoapException("BANG!", SoapException.ClientFaultCode);
Run Code Online (Sandbox Code Playgroud)

当我创建一个ASP.NET客户端,并请求标签显示SoapException.Message属性时,它会显示类似于以下内容的消息:

System.Web.Services.Protocols.SoapException:BANG!at [DIRECTORY]\WebService1.asmx.cs中的WebServiceException.WebService1.HelloWorld():第23行

是否有一种简单的方法可以简单地呈现消息BANG!而不是整个字符串?或者我应该只使用正则表达式?

GBe*_*gen 7

如果将Web服务配置为打开自定义错误消息,则堆栈跟踪将不会出现在SOAP错误中,这反过来将意味着您的客户端将无法看到它.

在web.config中:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    ...
    <system.web>
        ...
        <customErrors mode="On"/>
        ...
    </system.web>
    ...
</configuration>
Run Code Online (Sandbox Code Playgroud)