【发布时间】:2011-11-29 21:09:40
【问题描述】:
我已按照以下说明使用 SVCUTIL.exe 创建了一个 WCF 客户端:http://msdn.microsoft.com/en-us/library/ms733133.aspx
它会创建一个 app.config 和一个 soapproxy.cs 文件以供使用。
我想不出任何方法来获取原始 XML 以进行调试。
Google 有很多向 web.config 文件添加 traceextension 的示例,但是我没有 web.config 文件...而且我找到的示例是针对 web.service 而不是 System.ServiceModel;
我需要访问 XML soap 调用以便调试它吗?
更新: 我正在尝试编辑配置跟踪以查看 SOAP XML。
我已将此添加到 app.config 文件中
<configuration>
<system.diagnostics>
<sources>
<source name="System.ServiceModel"
switchValue="Information, ActivityTracing"
propagateActivity="true">
<listeners>
<add name="xml" />
</listeners>
</source>
<source name="CardSpace">
<listeners>
<add name="xml" />
</listeners>
</source>
<source name="System.IO.Log">
<listeners>
<add name="xml" />
</listeners>
</source>
<source name="System.Runtime.Serialization">
<listeners>
<add name="xml" />
</listeners>
</source>
<source name="System.IdentityModel">
<listeners>
<add name="xml" />
</listeners>
</source>
</sources>
<sharedListeners>
<add name="xml"
type="System.Diagnostics.XmlWriterTraceListener"
initializeData="c:\log\Traces.svclog" />
</sharedListeners>
</system.diagnostics>
</configuration>
但是出现的跟踪日志似乎不包含原始 XML
【问题讨论】:
-
您是否尝试过使用代理,例如Fiddler?
-
Fiddler 似乎没有给我我需要看到的东西,也许是因为它正在对其进行编码?
-
确保 IIS 用户对该目录的权限。可能是 IIS 用户无法写入该文件/目录。
标签: c# wcf web-services soap