WCF: Distinguish between REST and SOAP requests using the OperationContext

operationcontext, rest, soap, wcf

Solution

You could look at the binding name on the ChannelDispatcher:

string bindingName = OperationContext.Current
                        .EndpointDispatcher.ChannelDispatcher.BindingName;

For REST, it would be `webHttpBinding` - anything else would be SOAP.

Problem

In WCF security, given the current OperationContext, what is the best way to determine whether the request is a SOAP request or a REST request?

Original source