1

I am writing a WCF service which will run on a server computer (Windows 10 OS). To host that service, I am considering WAS and IIS 7. I know earlier versions of IIS only support HTTP protocol, but IIS 7 and later support TCP/IP too.

My WCF service will be consumed by desktop/mobile WCF client for now, so I am planning to use only TCP/IP for now. But it might be expanded to include HTTP in the future to support Web.

Please advice which host I should use - WAS or IIS?

Ryan L
  • 119
  • 13
Mini
  • 447
  • 5
  • 16

1 Answers1

3

You need both.

From the documentation (https://technet.microsoft.com/en-us/library/cc735229(v=ws.10).aspx):

Windows Process Activation Service (WAS) manages application pool configuration and the creation and lifetime of worker processes for HTTP and other protocols. The World Wide Web Publishing Service (W3SVC) and other services depend on WAS.

You have to install the needed activations (Programs and Features | Turn windows features on and off | .Net framework advanced services | WCF services), create a service, host it in IIS, configure WCF and configure bindings in the IIS. You can configure bindings using IIS management (on the top right side of the IIS Manager, under Edit Site | Bindings...) or a command line tool, like this:

%windir%\system32\inetsrv\appcmd.exe set site "Default Web Site" -+bindings.[protocol='net.tcp',bindingInformation='808:*']

Command line sample and more information here:

https://learn.microsoft.com/en-us/dotnet/framework/wcf/feature-details/how-to-install-and-configure-wcf-activation-components

and here:

https://learn.microsoft.com/en-us/dotnet/framework/wcf/feature-details/how-to-host-a-wcf-service-in-was