如何调试控制台测试程序调用的WCF服务(含GetData方法断点调试)
如何调试WCF服务的GetData方法(含断点调试)
嘿,我来帮你搞定WCF服务的断点调试问题!你已经用VS2017搭好了WCF服务和控制台测试项目,接下来跟着下面的步骤操作,就能轻松调试GetData方法了:
第一步:配置WCF服务项目的调试设置
打开你的TestWCF服务项目,右键项目→【属性】→切换到【调试】标签页:- 在「启动操作」里选择【启动项目】(本地调试选这个最省心,要是你的服务是网站类型,也可以选「启动外部程序」指定IIS Express路径)
- 不需要的话可以关掉「启动浏览器」选项,避免弹窗干扰
- 记得保存设置哦
第二步:在WCF服务里打断点
找到服务实现文件(一般是Service1.svc.cs),定位到GetData方法,在代码行左边的空白处点击,打上红色的断点,比如:public string GetData(int value) { return string.Format("You entered: {0}", value); // 就在这行左边打个断点 }第三步:启动WCF服务的调试实例
右键TestWCF项目→【调试】→【启动新实例】,或者直接按F5启动。等服务启动后(会弹出WCF测试客户端或控制台窗口),千万别关掉这个窗口!第四步:启动控制台测试项目的调试
切换到ConsoleAppTestWCF项目,右键→【调试】→【启动新实例】(或者按F5)。当控制台提示输入值时,敲个整数比如123回车——这时候程序会自动跳转到你刚才在WCF服务里打的断点处!第五步:开始调试操作
现在你就可以像调试普通C#代码一样操作了:- 按F10单步执行代码
- 按F11深入查看内部逻辑
- 鼠标悬停在变量上查看值
- 用「即时窗口」执行临时代码
额外注意事项
- 如果你的WCF服务部署在IIS上,得先在IIS里启用调试,然后在VS里通过「调试→附加到进程」找到
w3wp.exe进程并附加,再进行调试 - 要是WCF服务代码有修改,别忘了更新控制台项目的服务引用(右键服务引用→更新服务引用)
- 调试完记得关闭所有调试窗口哦
内容的提问来源于stack exchange,提问作者A.Pissicat




