1

我有一个在 IIS 上运行的 ASP.NET asmx Web 服务。

一个客户端正在尝试使用该服务,我可以看到(在重建之后) Global.asax Application_Start 受到他的尝试的打击......但特定的功能没有受到打击。

此链接 从在 ASP.net 中运行的 Web 参考客户端获取 RAW Soap 数据 为我正在尝试做的事情提供了一个“解决方案”,但它没有用。

我将上述链接的建议放在了我的 web.config 中,但即使我自己成功调用了该服务,也不会生成日志文件。

4

1 回答 1

0

如果您希望在客户端捕获请求/响应,您可以使用 WCF 样式生成的代理连接到 ASMX Web 服务,只需使用“服务参考”而不是“Web 参考”,然后按照您链接的 WCF 跟踪用于原始数据,以及System.ServiceModel.MessageLogging用于特定于 SOAP 的东西。请记住:

  1. maxdatasize属性System.Net将截断记录的数据,因此如果您的请求/响应更大,请选择更大的数字。maxSizeOfMessageToLog与 一起使用System.ServiceModel.MessageLogging
  2. 删除原始 ascii/hex 并仅tracemode="protocolonly"<source name="System.Net">元素中显示 xml

但是,如果您想在服务器端捕获请求(即从您的 ASMX Web 服务中),您可以尝试这里的建议,即从请求流中读取数据,Application_BeginRequest也可能从响应流中读取数据Application_EndRequest

于 2015-07-24T14:19:14.603 回答