ChannelFactory<TChannel>.CreateChannel Method (EndpointAddress, Uri)

 

Creates a channel that is used to send messages to a service at a specific endpoint address through a specified transport address.

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

public virtual TChannel CreateChannel(
	EndpointAddress address,
	Uri via
)

Parameters

address
Type: System.ServiceModel.EndpointAddress

The EndpointAddress that provides the location of the service.

via
Type: System.Uri

The Uri that contains the transport address to which the channel sends messages.

Return Value

Type: TChannel

The TChannel of type IChannel created by the factory.

Exception Condition
ArgumentNullException

address is null.

InvalidOperationException

The ChannelFactory has duplex operations it does not support.

       BasicHttpBinding binding = new BasicHttpBinding();
       EndpointAddress address = new EndpointAddress("http://localhost:8000/ChannelApp");
Uri via = new Uri("http://localhost:8000/Via");

ChannelFactory<IRequestChannel> factory = new ChannelFactory<IRequestChannel>(binding);

       IRequestChannel channel = factory.CreateChannel(address, via);
       channel.Open();
       Message request = Message.CreateMessage(MessageVersion.Soap11, "hello");
       Message reply = channel.Request(request);
       Console.Out.WriteLine(reply.Headers.Action);
       reply.Close();
       channel.Close();
       factory.Close();

Universal Windows Platform
Available since 8
.NET Framework
Available since 3.0
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Return to top
Show: