WCF 激活功能的用途是什么?

BBa*_*r42 4 wcf

我在 Visual Studio 2013 中创建 WCF 服务并将其发布到 IIS。我可以在另一个项目中添加服务引用并使用该服务的方法。当我转到 IIS 服务器管理器时,我看到 WCF 激活及其两个子项(HTTP 激活和非 HTTP 激活)未选中。

这些功能是什么?如果不启用这些功能,我的 WCF 站点如何工作?我在网上浏览了很多,但没有找到任何明确的答案。谢谢。

Phi*_*rdt 8

在 IIS 7.0 之前,您只能在 IIS 上托管 HTTP 服务。如果您想使用非 HTTP 协议(​​例如 net.tcp),您必须自行托管。Microsoft 引入了 Windows 进程激活服务 (WAS),以允许在 IIS 内进行通用托管,而无论使用何种通信协议。

实际上,它的一个巧妙功能是您可以在 IIS 上托管 net.tcp WCF 服务,一旦流量开始到达,它们就会动态激活。以前,在消息开始到达之前,您必须先运行服务(控制台应用程序、Windows 服务或其他)。

更多详细信息可以在这篇MSDN 文章中找到。

如果您只是使用 HTTP 协议运行 WCF 服务并将这些服务托管在 IIS 网站中,则默认配置将起作用。