我一直在使用服务跟踪查看器来分析在我们的应用程序中进行的WCF服务调用,但我真的需要查看传递给服务方法的参数值吗?这可能吗?我已经尝试将记录转换为最大输出,但仍然看不到任何东西:(
答案 0 :(得分:18)
如果您启用了邮件跟踪,您应该获得该调用的所有详细信息(包括发出的邮件的XML表示)以及答案:
<system.diagnostics >
<sources>
<source
name="System.ServiceModel.MessageLogging"
switchValue="Information, ActivityTracing" >
<listeners>
<add name="yourTrace"
type="System.Diagnostics.XmlWriterTraceListener"
initializeData="C:\Logs\YourMessageLog.svclog">
<filter type="" />
</add>
</listeners>
</source>
</sources>
<trace autoflush="true" />
</system.diagnostics>
<system.serviceModel>
<diagnostics>
<messageLogging
logMessagesAtTransportLevel="true"
logMessagesAtServiceLevel="false"
logMalformedMessages="true"
logEntireMessage="true"
maxSizeOfMessageToLog="65535000" maxMessagesToLog="500" />
</diagnostics>
</system.serviceModel>
这应该在目录“C:\ Logs”(必须事先存在!)中创建一个名为“YourMessageLog.svclog”的文件,并且可以使用WCF服务跟踪查看器进行查看。
您将在此处看到的是消息的 XML表示以及返回的响应 - 您的参数将被包装到您的XML结构中。这就是你要找的东西吗?