WCF in Metro apps – supported functionality

I wanted to do this quick post to outline the supported functionality in terms of commonly used APIs for WCF in Metro apps. I am not listing each and every included API in this post but just listing the top level ones which are commonly used to give you an idea. Let us know if you think there is something obvious which is missing and which you would eventually want to see in the final release. You can also drill down into the included APIs by using your favorite disassembler (for me it is Reflector!) on the reference assemblies here – C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETCore\v4.5

Bindings –

  1. BasicHttpBinding
  2. NetTcpBinding
  3. NetHttpBinding
  4. CustomBinding

Binding elements –  

  1. BinaryMessageEncodingBindingElement
  2. TextMessageEncodingBindingElement
  3. ConnectionOrientedTransportBindingElement 
  4. SslStreamSecurityBindingElement
  5. WindowsStreamSecurityBindingElement
  6. TcpTransportBindingElement
  7. Http(s)TransportBindingElement
  8. TransportSecurityBindingElement

Encoding –  

Text, Binary

Security modes –  

None, Transport, TransportWithMessageCredential, TransportCredentialOnly (for BasicHttpBinding)

ClientCredentialType –

None, Basic, Digest, Negotiate, Ntlm, Windows

Transfer Mode –

Buffered, Streamed, StreamedRequest, and StreamedResponse   

Serializers –   

DataContractSerializer, DataContractJsonSerializer, XmlSerializer

Miscellaneous –





Comments (4)

  1. Greg says:

    Thanks for the info.

    What's supported from WinRT?

  2. Hi Greg,

    If you are asking about which APIs are supported in Windows Runtime then I found this – msdn.microsoft.com/…/br211377(v=vs.85).aspx as the reference. There were no WCF specific additions here.


  3. Ryan says:

    Hey Piyusho, I'm just wondering – will there be any future support for ws-http binding?  Thanks.

  4. Hi Ryan,

    There aren't any plans yet to support any of the WS-* features including wsHttpBinding.