【问题标题】:WCF start failure message boxWCF 启动失败消息框
【发布时间】:2018-12-19 17:01:43
【问题描述】:

我有一个使用 C#、Visual Studio 的 WCF 项目。当我想在调试模式下启动我的项目时,出现以下错误:“无法从命令行或调试器启动服务......”。我不应该使用 installutil 程序安装我的服务。

在我的代码中,我有一个用于在调试模式下启动程序以防止出现此错误的包装器:

#if DEBUG
    MyService service = new MyService();
    service.MyMethod();         
#else
    ServiceBase[] services;
    services= new ServiceBase[] 
    { 
        new MyService() 
    };
    ServiceBase.Run(services);
#endif

但错误仍然存​​在。它在进入方法 MyMethod() [F11] 之前出现

【问题讨论】:

  • 基本上,如果ServiceBase.Run 真的没有被调用,你不会看到你看到的错误。尝试在 #if DEBUG 代码中设置断点;确保它实际运行。除此之外,请查看this 了解更多信息。
  • 您在此处提到的代码在调试模式下应该可以正常工作。从我的角度来看,最好的方法是将业务逻辑移动到单独的项目中并拥有单独的控制台应用程序来测试逻辑

标签: wcf service


【解决方案1】:

我认为,请确保运行窗口服务的帐户具有所需的权限,最好使用localsystem,可以在ServcieProcessInstaller中进行配置。
如果服务需要与数据库交互,可以使用特定用户来运行服务,以便服务能够正常连接数据库。
如果问题仍然存在,请随时告诉我。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-11
    • 2014-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-14
    • 2017-07-22
    相关资源
    最近更新 更多