【问题标题】:.NET Web Services without ASP.NET/IIS?没有 ASP.NET/IIS 的 .NET Web 服务?
【发布时间】:2010-12-01 21:16:59
【问题描述】:

我正在实现一个需要公开 Web 服务接口的服务器组件,但没有应用程序需要它在 IIS 上与 ASP.NET 一起运行。在没有 ASP.NET/IIS 的情况下在 .NET 中实现 Web 服务是否有直接的方法? (我使用的是 .NET 3.5 / C# 3.0)

【问题讨论】:

  • 您使用的是哪个版本的 .Net?
  • @dcw 只是好奇为什么要避免将 IIS 7 作为 WCF 主机?谢谢!
  • @dcw 抱歉...我并不是要在评论中添加“7”。我只是好奇为什么您会选择避免使用 IIS。谢谢!
  • 扎克:没有深刻的洞察力。我只需要能够使用端口 80 来驱动各种服务器进程,但不想让我的客户端在所有机器上都安装 IIS。 HTH。 :-)
  • 避免 IIS 的原因有很多。例如,如果您想创建一个独立的服务器应用程序,或者仅仅因为您认为您可以做一些比 IIS 更好的事情。为什么大多数 .NET 开发人员如此坚持 Microsoft Guru 的愿景?

标签: c# asp.net .net wcf web-services


【解决方案1】:

您可以使用ServiceHost 类来托管服务。 WCF tutorial 包含示例代码。

【讨论】:

    【解决方案2】:

    只要您使用支持它的 .Net 版本,您就应该关注 Windows Communication Foundation (WCF)。您需要一些进程来托管这些服务,因此如果您不使用 IIS,您最终可能会编写自己的 EXE 来托管服务,但您应该从这里开始。

    http://msdn.microsoft.com/en-us/library/ms731082.aspx

    http://msdn.microsoft.com/en-us/netframework/aa663309.aspx

    【讨论】:

      【解决方案3】:

      Hosting and Consuming WCF Services

      这是一篇较旧的文章,但仍然相关。

      【讨论】:

        【解决方案4】:

        是的,使用ServiceHost

        【讨论】:

          【解决方案5】:

          如果您使用 WCF (Windows Communication Foundation),它几乎取代了 Web 服务,您可以托管在 Windows 服务或 IIS 中。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-06-24
            • 1970-01-01
            相关资源
            最近更新 更多