ServiceDebug 示例演示如何配置服务调试行为设置。 此示例基于名为Getting Started的指南,并实现ICalculator
服务协定。 此示例在配置文件中显式定义服务调试行为。 也可以在代码中命令性地完成。
在此示例中,客户端是一个控制台应用程序 (.exe),服务是由 Internet 信息服务 (IIS) 承载的。
注释
本示例的设置过程和生成说明位于本主题末尾。
服务器的 Web.config 文件定义服务调试行为,以启用帮助页和异常处理,如以下示例所示。
<behaviors>
<serviceBehaviors>
<behavior name="CalculatorServiceBehavior">
<!-- WARNING: Setting includeExceptionDetailInFaults = "True" could result in leaking secured server information to the client.-->
<!-- Please set this to false when deploying -->
<serviceDebug includeExceptionDetailInFaults="True" httpHelpPageEnabled="True"/>
</behavior>
</serviceBehaviors>
</behaviors>
<serviceDebug> 是允许更改服务调试行为属性的配置元素。 用户可以修改此行为以实现以下目的:
这允许服务返回应用程序代码引发的任何异常,即使未使用 <
/gt; 声明异常。 通过将 includeExceptionDetailInFaults
设置为true
。 当调试服务器引发意外异常的情况时,此设置非常有用。重要
在生产环境中启用此设置并不安全。 意外的服务器异常可能包含一些不适合客户端的信息,因此将
includeExceptionDetailsInFaults
设置为true
可能会导致信息泄漏。serviceDebug<> 还允许用户启用或禁用帮助页。 每个服务可以选择公开一个帮助页,其中包含有关服务的信息,包括用于获取服务的 WSDL 的终结点。 可以通过将
httpHelpPageEnabled
设置为true
来启用该功能。 这使得在服务基址接收到 GET 请求时能够返回帮助页。 可以通过设置另一个属性httpHelpPageUrl
来更改此地址。 可以使用 HTTPS 而不是 HTTP 来保护此安全。 可以通过设置httpsHelpPageEnabled
和httpsHelpPageUrl
。
运行示例时,操作请求和响应将显示在客户端控制台窗口中。 前三个操作(加法、减法和乘法)必须成功。 最后一个操作(“除”)由于除数为零异常而失败。
设置、生成和运行示例
确保已为 Windows Communication Foundation 示例 执行One-Time 安装过程。
若要生成解决方案的 C# 或 Visual Basic .NET 版本,请按照 生成 Windows Communication Foundation 示例中的说明进行操作。
若要在单台计算机或跨计算机配置中运行示例,请按照 运行 Windows Communication Foundation 示例中的说明进行操作。