【问题标题】:How to host WCF web service over the internet?如何通过 Internet 托管 WCF Web 服务?
【发布时间】:2014-10-01 01:42:49
【问题描述】:

我是一名 C# 开发人员,我们使用许多 .NET Web 服务。我正在做一些家庭开发,并想做类似的事情。我在运行 Windows Server 2012 并安装了 IIS 8 的家用 PC 上有一个数据库 (SQL Server 2012)。我在 Visual Studio (C#) 中创建了一个 WCF Web 服务,它编译为一个 .svc 文件。这只是促进了我的 SQL Server 数据库和我正在编写的应用程序之间的数据交换。

我不熟悉如何托管 WCF 服务,以便我正在编写的将安装在许多非本地计算机上的 Windows 窗体应用程序可以访问它。我认为 WCF 服务是通过 Internet 访问我的 WinForm 应用程序数据库的最佳选择。

如果有帮助的话,我在 1&1.com 上还有一个包含基本 Windows 包的域,这是以前项目的剩余部分。

谁能给我一些步骤来托管我的 WCF 服务,以便可以通过 Internet 访问它?请询问我是否忘记列出任何需要的信息。

【问题讨论】:

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


    【解决方案1】:

    两种常见的方法是从 IIS 托管 WCF 服务,或者从充当 TCP 服务器的简单包装程序中自行托管它。

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

    最简单的方法是设置 IIS,然后像发布 Web 应用程序一样发布您的服务;您的服务将通过 http/https 公开。根据您的安全需要使用适当的绑定,例如 wsHttpBinding 或 BasicHttpBinding。仔细阅读以了解不同的绑定以及各自支持和不支持的内容。

    为了通过 IIS 托管 WCF,至少在 Windows Server 2003 和 2008 上,请确保遵循安装步骤,例如在旧平台上添加 .NET 3.5.1 / WCF 选项。我相信 Server 2012 将它包含在 .NET 4 框架中,但我还没有在 2012 年完成它。

    Google“WCF 托管 IIS”获取步骤/设置指南。

    还有专门提供 WCF 托管解决方案的托管服务提供商,但我很确定您当前的提供商,因为它支持 IIS,应该可以正常工作。

    【讨论】:

    • 他可能需要的远不止这些……比如如何确定外部 IP 地址、在防火墙上打开端口等等
    • @Mick - 当然,但以上是我愿意在此设置中提供的。随意编辑我的答案并添加到其中,或添加您自己的答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-22
    • 2013-12-10
    相关资源
    最近更新 更多