在Windows服务OnStart

时间:2016-01-28 11:54:21

标签: c# wcf debugging

我有一个自托管的WCF服务,它由一个dll和一个Windows服务组成。在dll中我描述了wcf服务和app.config。 wcf服务旨在承载整个事情。

我的问题是,当我尝试启动服务时,它现在无法启动。 "您的服务已经启动然后停止了#34;之类的事情。

我尝试通过取消一些代码来搜索错误。我做到这一点,直到只有结构(初始化,启动,停止),即使那时它没有工作?

这种情况经常发生吗? System.Diagnostics.Debbuger.Launch不适用于Debug。有没有更好的调试OnStart方法的想法?

2 个答案:

答案 0 :(得分:0)

在'OnStart'方法中添加try ... catch,并记录到事件日志,看看是否收到任何异常。

您的WCF绑定或服务合同实施中也可能存在某些问题。因此,请检查WCF配置是否存在问题。如果您可以发布配置的内容,最好提供更多指导。

为了快速排除故障,您可以在控制台应用程序中托管WCF并查看它是否正常工作,而不是每次都启动该服务。

答案 1 :(得分:0)

你可以在' OnStart'中尝试Thread.Sleep(毫秒)。方法,设置' break'在下一行,并附加调试器(alt + ctrl + p in vs)进行调试,如果服务在到达断点之前中断 - 应该是配置文件问题,请在此处发布。