【问题标题】:Writing Windows service in WCF在 WCF 中编写 Windows 服务
【发布时间】:2009-11-16 12:02:13
【问题描述】:

我想用wcf写windows服务找了好多才发现是wcf写webservice而不是windows服务的教程。

任何人都可以提供任何解释如何在 WCF 中编写 Windows 服务的教程的链接

【问题讨论】:

  • “WCF 中的 Windows 服务”到底是什么意思 - Windows 服务大致是 Windows 操作系统中的后台任务。 WCF 是一个通信框架,因此所写的问题没有多大意义。
  • Windows 服务!= WCF 服务、Web 服务、SOAP 服务等。完全不同的概念。 Windows 服务是在后台运行的长时间运行的应用程序。 WCF/Web 服务与 SOA 相关,是一种在网络上传输数据甚至在同一台机器(管道)上运行的应用程序之间进行通信的方式。所以..你想完成什么?这才是真正的问题。

标签: windows wcf windows-services


【解决方案1】:

Windows 服务是可执行文件。 WCF 应用程序通常是通过 URI 公开的 Web 服务。您可以在 Windows 服务中托管 WCF 应用程序,而不是相反。

【讨论】:

  • 完全正确 - 您不能在“WCF”中编写 Windows 服务 - 可以在 NT 服务中托管 WCF 服务....
【解决方案2】:

要在 C# 中创建 Windows 服务,请按照here 的分步操作。要使您的 Windows 服务启用 WCF,请创建 System.ServiceModel.ServiceHost 实例,该实例将在 OnStart() 回调中托管您的 WCF 服务。

【讨论】:

    【解决方案3】:

    很好的答案。只是一个简短的说明...在类库 (dll) 中实现您的 WCF 服务,这样您就可以在任何您喜欢的位置(IIS、控制台应用程序或 Windows 服务)托管它。
    我建议从控制台应用程序开始,在您的服务按预期工作后,创建一个 Windows 服务,添加对您的库的引用并从那里启动服务 (WCF)(Windows 服务)

    编辑:我只是假设您的意思是创建一个作为 Windows 服务托管的 WCF 服务,如果不是这样,请忽略我的回答。

    【讨论】:

      【解决方案4】:

      照常创建您的 WCF 服务,创建一个 Windows 服务,然后使用 ServiceHost 在您的 Windows 服务中自托管 WCF 服务。有关自托管 WCF 服务的更多信息,请参阅 this MSDN page

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-05-29
        • 2011-05-31
        • 1970-01-01
        • 1970-01-01
        • 2012-01-13
        相关资源
        最近更新 更多