ChannelFactory<TChannel>.CreateChannel 方法

定義

建立指向指定之端點位址的指定型別通道。

多載

CreateChannel(Binding, EndpointAddress, Uri)

建立用來傳送訊息至服務端點之指定型別的通道,在指定傳輸位址的此服務端點採用指定的繫結設定。

CreateChannel(EndpointAddress, Uri)

建立一個透過指定傳輸位址將訊息傳送至指定端點位址的服務的通道。

CreateChannel(Binding, EndpointAddress)

建立用來傳送訊息至服務端點之指定型別的通道,此服務端點採用指定的繫結設定。

CreateChannel(EndpointAddress)

建立用來傳送訊息至指定端點位址的服務的通道。

CreateChannel()

建立指向指定之端點位址的指定型別通道。

CreateChannel(String)

建立用來傳送訊息至指定端點位址的服務的通道,此服務的端點採用特定方式設定。

備註

建立 TChannel 型別的通道 (類別的泛型參數)。

CreateChannel(Binding, EndpointAddress, Uri)

來源:
ChannelFactory.cs
來源:
ChannelFactory.cs
來源:
ChannelFactory.cs

建立用來傳送訊息至服務端點之指定型別的通道,在指定傳輸位址的此服務端點採用指定的繫結設定。

public:
 static TChannel CreateChannel(System::ServiceModel::Channels::Binding ^ binding, System::ServiceModel::EndpointAddress ^ endpointAddress, Uri ^ via);
public static TChannel CreateChannel (System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress endpointAddress, Uri via);
static member CreateChannel : System.ServiceModel.Channels.Binding * System.ServiceModel.EndpointAddress * Uri -> 'Channel
Public Shared Function CreateChannel (binding As Binding, endpointAddress As EndpointAddress, via As Uri) As TChannel

參數

binding
Binding

用於設定端點的 Binding

endpointAddress
EndpointAddress

提供服務位置的 EndpointAddress

via
Uri

包含通道傳送訊息之目標傳輸位址的 Uri

傳回

TChannel

由處理站所建立之 TChannel 型別的 IChannel

例外狀況

ChannelFactory 有其不支援的雙工操作。

範例


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

 IRequestChannel channel =
ChannelFactory<IRequestChannel>.CreateChannel(binding, address, uri);
 channel.Open();
class Program : ChannelFactory<IService1Channel>
{
    static void Main(string[] args)
    {
        IService1Channel channel = CreateChannel("BasicHttpBinding_IService1");
        channel.Open();

        channel.Close();
    }
}

適用於

CreateChannel(EndpointAddress, Uri)

來源:
ChannelFactory.cs
來源:
ChannelFactory.cs
來源:
ChannelFactory.cs

建立一個透過指定傳輸位址將訊息傳送至指定端點位址的服務的通道。

public:
 virtual TChannel CreateChannel(System::ServiceModel::EndpointAddress ^ address, Uri ^ via);
public virtual TChannel CreateChannel (System.ServiceModel.EndpointAddress address, Uri via);
abstract member CreateChannel : System.ServiceModel.EndpointAddress * Uri -> 'Channel
override this.CreateChannel : System.ServiceModel.EndpointAddress * Uri -> 'Channel
Public Overridable Function CreateChannel (address As EndpointAddress, via As Uri) As TChannel

參數

address
EndpointAddress

提供服務位置的 EndpointAddress

via
Uri

包含通道傳送訊息之目標傳輸位址的 Uri

傳回

TChannel

由處理站所建立之 TChannel 型別的 IChannel

實作

例外狀況

addressnull

ChannelFactory 有其不支援的雙工操作。

範例

    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();

適用於

CreateChannel(Binding, EndpointAddress)

來源:
ChannelFactory.cs
來源:
ChannelFactory.cs
來源:
ChannelFactory.cs

建立用來傳送訊息至服務端點之指定型別的通道,此服務端點採用指定的繫結設定。

public:
 static TChannel CreateChannel(System::ServiceModel::Channels::Binding ^ binding, System::ServiceModel::EndpointAddress ^ endpointAddress);
public static TChannel CreateChannel (System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress endpointAddress);
static member CreateChannel : System.ServiceModel.Channels.Binding * System.ServiceModel.EndpointAddress -> 'Channel
Public Shared Function CreateChannel (binding As Binding, endpointAddress As EndpointAddress) As TChannel

參數

binding
Binding

用於設定端點的 Binding

endpointAddress
EndpointAddress

提供服務位置的 EndpointAddress

傳回

TChannel

由處理站所建立之 TChannel 型別的 IChannel

例外狀況

ChannelFactory 有其不支援的雙工操作。

範例


       EndpointAddress address = new EndpointAddress("http://localhost:8000/ChannelApp");
       IRequestChannel channel = ChannelFactory<IRequestChannel>.CreateChannel(binding, address);
       channel.Open();

適用於

CreateChannel(EndpointAddress)

來源:
ChannelFactory.cs
來源:
ChannelFactory.cs
來源:
ChannelFactory.cs

建立用來傳送訊息至指定端點位址的服務的通道。

public:
 virtual TChannel CreateChannel(System::ServiceModel::EndpointAddress ^ address);
public TChannel CreateChannel (System.ServiceModel.EndpointAddress address);
abstract member CreateChannel : System.ServiceModel.EndpointAddress -> 'Channel
override this.CreateChannel : System.ServiceModel.EndpointAddress -> 'Channel
Public Function CreateChannel (address As EndpointAddress) As TChannel

參數

address
EndpointAddress

提供服務位置的 EndpointAddress

傳回

TChannel

由處理站所建立之 TChannel 型別的 IChannel

實作

例外狀況

addressnull

範例

BasicHttpBinding binding = new BasicHttpBinding();
EndpointAddress address = new EndpointAddress("http://localhost:8000/ChannelApp");
ChannelFactory<IRequestChannel> factory = new ChannelFactory<IRequestChannel>(binding);
factory.CreateChannel(address);

適用於

CreateChannel()

來源:
ChannelFactory.cs
來源:
ChannelFactory.cs
來源:
ChannelFactory.cs

建立指向指定之端點位址的指定型別通道。

public:
 TChannel CreateChannel();
public TChannel CreateChannel ();
member this.CreateChannel : unit -> 'Channel
Public Function CreateChannel () As TChannel

傳回

TChannel

由處理站所建立之 TChannel 型別的 IChannel

範例

IChannelFactory<IRequestChannel> factory = binding.BuildChannelFactory<IRequestChannel>(bindingParams);
factory.Open();
EndpointAddress address = new EndpointAddress("http://localhost:8000/ChannelApp");
IRequestChannel channel = factory.CreateChannel(address);
channel.Open();

備註

建立 TChannel 型別的通道 (類別的泛型參數)。

適用於

CreateChannel(String)

來源:
ChannelFactory.cs
來源:
ChannelFactory.cs

建立用來傳送訊息至指定端點位址的服務的通道,此服務的端點採用特定方式設定。

protected:
 static TChannel CreateChannel(System::String ^ endpointConfigurationName);
protected static TChannel CreateChannel (string endpointConfigurationName);
static member CreateChannel : string -> 'Channel
Protected Shared Function CreateChannel (endpointConfigurationName As String) As TChannel

參數

endpointConfigurationName
String

該服務所用的端點組態名稱。

傳回

TChannel

由處理站所建立之 TChannel 型別的 IChannel

例外狀況

ChannelFactory 有其不支援的雙工操作。

範例

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

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

    IRequestChannel channel = factory.CreateChannel();
    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();
}

適用於