WcfCoreMtomEncoder
Currently, .NET Core WCF has no build-in support MTOM.
The MtomMessageEncoderBindingElement
allows .NET Core applications to communicate with WCF endpoints which support MTOM encoding.
Note: This is not a complete implementation of MTOM. It is meant as a workaround for calling existing MTOM encoded SOAP services. It consumes MTOM encoded messages, but does not perform MTOMEncoding on outbound messages. However this should be sufficent for interoperating with existing services.
Installation
.NET CLI
> dotnet add package WcfCoreMtomEncoder
Package Manager
PM> Install-Package WcfCoreMtomEncoder
Usage
The MtomMessageEncoderBindingElement
is meant to wrap another message encoder, usually TextMessageEncodingBindingElement
.
Creating a custom binding
var encoding = new MtomMessageEncoderBindingElement(new TextMessageEncodingBindingElement());
var transport = new HttpTransportBindingElement();
var customBinding = new CustomBinding(encoding, transport);
var client = new MtomEnabledServiceClient(customBinding);