如何将ASP.Net-MVC应用程序的Web服务请求记录到外部Web服务?

时间:2010-09-01 09:07:52

标签: c# asp.net asp.net-mvc fiddler webservice-client

我有一个webapplication,它使用外部Web服务发送文件和消息。 IIS在Windows2003服务器上运行。

我现在需要以某种方式记录ASP.NET-MVC应用程序发送给外部服务的请求。在Fiddler2中我只能看到来自webservice的传入答案,但我看不到从我的应用程序发送的请求。我需要看到整个XML Soap请求。

我已将此添加到web.config

<system.net>
    <defaultProxy>
      <proxy bypassonlocal="false" usesystemdefault="true" proxyaddress="http://127.0.0.1:8888" />
    </defaultProxy>
  </system.net>

有谁知道我还能做什么?

由于

2 个答案:

答案 0 :(得分:0)

您可以在客户端激活跟踪:

<trace autoflush="true" />
<sources>
  <source name="System.Net">
    <listeners>
      <add name="TraceFile" />
    </listeners>
  </source>
</sources>

<sharedListeners>
  <add
    name="TraceFile"
    type="System.Diagnostics.TextWriterTraceListener"
    initializeData="NetTrace.log" />
</sharedListeners>

<switches>
  <add name="System.Net" value="Verbose" />
</switches>

答案 1 :(得分:0)

您是如何为您的网络服务创建代理的?如果使用“添加Web引用”,则可以创建自定义SoapExtension以记录通信。 MSDN正好包含此示例。如果您使用了添加服务引用,则可以从WCF message logging中的内置开始。如果您想要自定义机制,则可以构建自己的自定义client message inspector

修改

顺便说一下。 Fiddler还提供了应用程序integration,但我从未使用它。