0

我制作了一个基本的 wcf 控制台应用程序服务,它通过 pipe.net 进行通信。该逻辑适用于我的主应用程序,但出于业务原因我需要将其分开

它做其中之一

   Uri baseAddress = new Uri(@"net.pipe://localhost/Server");
   Uri baseHttpAddress = new Uri(@"http://localhost:9080");

   using (var host = new ServiceHost(typeof(CPLConversionService), baseAddress, baseHttpAddress))
   {
       host.Open();
       Console.WriteLine("The CPLConversionService is available. ");

       Console.WriteLine("Press <Enter> to stop the service. ");
       Console.ReadLine();

       host.Close();
    }

无论如何,可以将它放在网络服务器上并让它长期运行吗?我应该以某种形式使用 IIS 来管理它吗?

4

2 回答 2

1

在 Windows 服务中托管更适合生产使用,因为它具有自动启动功能。在 IIS 中托管更容易,并提供更好的可维护性和配置。带有 App Fabric 的 IIS 可以更好地监控您的服务。

有关选择托管方式的帮助,请参阅此答案https://stackoverflow.com/a/9823604/2898090

于 2014-02-25T05:47:20.077 回答
0

Windows 服务优于控制台应用程序。您可以定义服务的启动属性(用户、自动启动、依赖项和故障行为)。

于 2014-02-25T05:35:44.020 回答