2010-09-01 86 views
0

我有一個使用外部web服務發送文件和消息的web應用程序。 IIS在Windows2003服務器上運行。如何將web服務請求從ASP.Net-MVC應用程序記錄到外部Web服務?

我現在需要以某種方式記錄由ASP.NET-MVC應用程序發送到外部服務的請求。在Fiddler2中,我只能看到來自web服務的傳入答案,但我看不到從我的應用程序發送的請求。我需要看到整個XML Soap請求。

我已經添加到了web.config中

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

有誰知道還有什麼我能做什麼?

感謝

+0

您應該能夠在提琴手中看到請求。 – 2010-09-01 09:23:43

+0

上面所做的工作應該可以正常工作(儘管您應該將usesystemdefault設置爲FALSE),並且數百人會定期執行此操作。你應該檢查你的machine.config和代碼本身,看它是否覆蓋了代理。 – EricLaw 2010-09-01 21:20:09

回答

0

你是如何創建的代理到Web服務?如果您使用添加Web引用,則可以創建自定義SoapExtension來記錄通信。 MSDN完全包含此示例。如果您使用添加服務引用,則可以從構建WCF message logging開始。如果你想要定製機制,你可以建立你自己的定製client message inspector

編輯:

順便說一句。提琴手也提供應用integration,但我從來沒有使用它。

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> 

+0

將在您的網站根目錄下創建的「NetTrace.log」。 – 2010-09-01 09:38:53