我创建了一个服务,它基本上公开了一些更新sql server数据库的方法。
我将服务测试为普通的WCF服务(不是Windows服务)并且运行正常(这告诉我App.config中的ServiceModel定义没问题)
然后我把它变成了Windows服务,我使用InstallUtil安装它,它安装得很好。 但是当在服务控制台中尝试启动时,我收到此消息“本地计算机上的服务WCFProductsWindowsService服务已启动然后停止。如果某些服务未被其他服务使用,则会自动停止服务或计划“
公开服务的解决方案由两个项目组成,
暴露serice的类是:
public class ProductsWindowsService : ServiceBase {
public ServiceHost serviceHost = null;
public ProductsWindowsService() {
ServiceName = "WCFProductsWindowsService";
}
public static void Main() {
ServiceBase.Run(new ProductsWindowsService());
}
protected override void OnStart(string[] args) {
if (serviceHost != null) {
serviceHost.Close();
}
serviceHost = new ServiceHost(typeof(ProductsServiceImpl));
serviceHost.Open();
}
protected override void OnStop() {
if (serviceHost != null) {
serviceHost.Close();
serviceHost = null;
}
}
}
我在SkyDrive
上传了这个简单的项目我可能做错了什么?
答案 0 :(得分:1)
不允许我添加评论。 此错误“本地计算机上的服务WCFProductsWindowsService服务已启动然后停止。如果某些服务未被其他服务或程序使用,则会自动停止”表示引发了异常。
我会检查事件查看器以查看记录的异常。
ProductsServiceImpl
是否存在?我无法在您的图片或解决方案中找到它。