磨刀不误砍柴工,对于编程过程中的调试环境搭建是很必要的。
一、使用Microsoft Service Trace Viewer 生成服务交互跟踪日志
在Silverlight端调用wcf服务时,常会遇到各种错误却无法得到详细的信息,比如数据库
访问出错等。幸好微软有提供了一个wcf的跟踪工具和生成跟踪日志的方法。
在项目中启用wcf跟踪可以在服务项目的配置文件中加入以下配置段:
<system.diagnostics>
<sources>
<source name="System.ServiceModel"
switchValue="Information, ActivityTracing"
propagateActivity="true">
<listeners>
<add name="traceListener"
type="System.Diagnostics.XmlWriterTraceListener"
initializeData= "c:/log/Traces.svclog" />
</listeners>
</source>
</sources>
</system.diagnostics>
此后在调用服务时会创建 c:/log/Traces.svclog 文件。到目录中双击打开该文件可以查看到详细的
服务调用信息,当中也包含了详细的错误信息,如哪个表的哪个字段不能为空值等。
二、调试wcf服务
首先运行应用程序如silverlight,然后使用VS2010的 Attach to Process 把项目附加到IIS的进程w3wp.exe中,
当在应用程序端调用服务的时候就会触发到服务端对应设定的断点。此时便可进入调试
三、自定义log文件
应该在wcf服务端建立自己的log文件的,输出一些异常或程序的逻辑状态信息到文件中,可以弥补以上的不足点。