Export (0) Print
Expand All

BindingElement.BuildChannelFactory(TChannel) Method

Initializes a channel factory for producing channels of a specified type from the binding context.

Namespace:  System.ServiceModel.Channels
Assembly:  System.ServiceModel (in System.ServiceModel.dll)

abstract BuildChannelFactory : 
        context:BindingContext -> IChannelFactory<'TChannel> 
override BuildChannelFactory : 
        context:BindingContext -> IChannelFactory<'TChannel> 

Type Parameters

TChannel

The type of channel the factory builds.

Parameters

context
Type: System.ServiceModel.Channels.BindingContext

The BindingContext that provides context for the binding element.

Return Value

Type: System.ServiceModel.Channels.IChannelFactory(TChannel)
The IChannelFactory(TChannel) of type TChannel initialized from the context.

ExceptionCondition
ArgumentNullException

context is a null reference (Nothing in Visual Basic).

CustomBinding binding = new CustomBinding();
HttpTransportBindingElement element = new HttpTransportBindingElement();
BindingParameterCollection parameters = new BindingParameterCollection();
BindingContext context = new BindingContext(binding, parameters);

IChannelFactory<IRequestChannel> factory = element.BuildChannelFactory<IRequestChannel>(context);
factory.Open();
EndpointAddress address = new EndpointAddress("http://localhost:8000/ChannelApp");
IRequestChannel channel = factory.CreateChannel(address);
channel.Open();
Message request = Message.CreateMessage(MessageVersion.Default, "hello");
Message reply = channel.Request(request);
Console.Out.WriteLine(reply.Headers.Action);
reply.Close();
channel.Close();
factory.Close();

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Portable Class Library

Supported in: Portable Class Library

Supported in: Windows Phone 8.1

Supported in: Windows Phone Silverlight 8.1

Supported in: Windows Phone Silverlight 8
Show:
© 2015 Microsoft