WebChannelFactory<TChannel> クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
クライアント上の Windows Communication Foundation (WCF) Web サービスにアクセスするためのクラス。
generic <typename TChannel>
where TChannel : classpublic ref class WebChannelFactory : System::ServiceModel::ChannelFactory<TChannel>
public class WebChannelFactory<TChannel> : System.ServiceModel.ChannelFactory<TChannel> where TChannel : class
type WebChannelFactory<'Channel (requires 'Channel : null)> = class
inherit ChannelFactory<'Channel (requires 'Channel : null)>
Public Class WebChannelFactory(Of TChannel)
Inherits ChannelFactory(Of TChannel)
型パラメーター
- TChannel
作成するチャネルの種類。
- 継承
例
次のコードは、 WebChannelFactory<TChannel> クラスを使用して WCF サービスを呼び出す方法を示しています。
Uri baseAddress = new Uri("http://localhost:8000");
WebServiceHost host = new WebServiceHost(typeof(Service), baseAddress);
try
{
host.Open();
WebChannelFactory<IService> cf = new WebChannelFactory<IService>(baseAddress);
IService channel = cf.CreateChannel();
string s;
Console.WriteLine("Calling EchoWithGet via HTTP GET: ");
s = channel.EchoWithGet("Hello, world");
Console.WriteLine(" Output: {0}", s);
Console.WriteLine("");
Console.WriteLine("Calling EchoWithPost via HTTP POST: ");
s = channel.EchoWithPost("Hello, world");
Console.WriteLine(" Output: {0}", s);
Console.WriteLine("");
}
catch (CommunicationException ex)
{
Console.WriteLine("An exception occurred: " + ex.Message);
}
Dim baseAddress As New Uri("http://localhost:8000")
Dim host As New WebServiceHost(GetType(Service), baseAddress)
Try
host.Open()
Dim cf As New WebChannelFactory(Of IService)(baseAddress)
Dim channel As IService = cf.CreateChannel()
Dim s As String
Console.WriteLine("Calling EchoWithGet via HTTP GET: ")
s = channel.EchoWithGet("Hello, world")
Console.WriteLine(" Output: 0}", s)
Console.WriteLine("")
Console.WriteLine("Calling EchoWithPost via HTTP POST: ")
s = channel.EchoWithPost("Hello, world")
Console.WriteLine(" Output: 0}", s)
Console.WriteLine("")
Catch ex As CommunicationException
Console.WriteLine("An exception occurred: " + ex.Message)
End Try
完全なコード例については、「 基本的な WCF REST プログラミング モデルのサンプル」を参照してください。
注釈
このクラスは、エンドポイントにChannelFactoryがまだ存在しない場合に自動的に追加する特別なWebHttpBehaviorです。 さらに、バインディングが明示的に構成されておらず、アドレスが HTTP または HTTPS アドレスである場合は、エンドポイントに既定の WebHttpBinding が追加されます。
コントラクトのすべての操作に戻り値がない場合、または Stream型の戻り値がある場合、 WebChannelFactory<TChannel> は適切なコンテンツ タイプのバインドを構成します。
コンストラクター
| 名前 | 説明 |
|---|---|
| WebChannelFactory<TChannel>() |
WebChannelFactory<TChannel> クラスの新しいインスタンスを初期化します。 |
| WebChannelFactory<TChannel>(Binding, Uri) |
指定したバインディングとWebChannelFactory<TChannel>を使用して、Uri クラスの新しいインスタンスを初期化します。 |
| WebChannelFactory<TChannel>(Binding) |
WebChannelFactory<TChannel> クラスの新しいインスタンスを初期化します。 |
| WebChannelFactory<TChannel>(ServiceEndpoint) |
WebChannelFactory<TChannel> クラスの新しいインスタンスを初期化します。 |
| WebChannelFactory<TChannel>(String, Uri) |
指定したエンドポイント構成とWebChannelFactory<TChannel>を使用して、Uri クラスの新しいインスタンスを初期化します。 |
| WebChannelFactory<TChannel>(String) |
WebChannelFactory<TChannel> クラスの新しいインスタンスを初期化します。 |
| WebChannelFactory<TChannel>(Type) |
WebChannelFactory<TChannel> クラスの新しいインスタンスを初期化します。 |
| WebChannelFactory<TChannel>(Uri) |
指定したWebChannelFactory<TChannel>を使用して、Uri クラスの新しいインスタンスを初期化します。 |
プロパティ
| 名前 | 説明 |
|---|---|
| Credentials |
ファクトリによって生成されたチャネルを介してサービス エンドポイントを通信するためにクライアントによって使用される資格情報を取得します。 (継承元 ChannelFactory) |
| DefaultCloseTimeout |
閉じる操作が完了するまでに指定された既定の時間間隔を取得します。 (継承元 ChannelFactory) |
| DefaultOpenTimeout |
開いている操作が完了するまでに指定された既定の時間間隔を取得します。 (継承元 ChannelFactory) |
| Endpoint |
ファクトリによって生成されたチャネルが接続するサービス エンドポイントを取得します。 (継承元 ChannelFactory) |
| IsDisposed |
通信オブジェクトが破棄されたかどうかを示す値を取得します。 (継承元 CommunicationObject) |
| State |
通信オブジェクトの現在の状態を示す値を取得します。 (継承元 CommunicationObject) |
| ThisLock |
状態遷移中にクラス インスタンスを保護する相互排他的ロックを取得します。 (継承元 CommunicationObject) |
メソッド
| 名前 | 説明 |
|---|---|
| Abort() |
通信オブジェクトを現在の状態から終了状態に直ちに遷移させます。 (継承元 CommunicationObject) |
| ApplyConfiguration(String) |
指定した構成ファイルによって提供される動作と、チャネル ファクトリのサービス エンドポイント内の動作を使用して、チャネル ファクトリを初期化します。 (継承元 ChannelFactory) |
| BeginClose(AsyncCallback, Object) |
通信オブジェクトを閉じる非同期操作を開始します。 (継承元 CommunicationObject) |
| BeginClose(TimeSpan, AsyncCallback, Object) |
指定したタイムアウトで通信オブジェクトを閉じる非同期操作を開始します。 (継承元 CommunicationObject) |
| BeginOpen(AsyncCallback, Object) |
通信オブジェクトを開く非同期操作を開始します。 (継承元 CommunicationObject) |
| BeginOpen(TimeSpan, AsyncCallback, Object) |
指定した時間内に通信オブジェクトを開く非同期操作を開始します。 (継承元 CommunicationObject) |
| Close() |
通信オブジェクトを現在の状態から閉じた状態に遷移させます。 (継承元 CommunicationObject) |
| Close(TimeSpan) |
指定した時間内に、通信オブジェクトを現在の状態から閉じた状態に遷移させます。 (継承元 CommunicationObject) |
| CreateChannel() |
指定した種類のチャネルを、指定したエンドポイント アドレスに作成します。 (継承元 ChannelFactory<TChannel>) |
| CreateChannel(EndpointAddress, Uri) |
指定したトランスポート アドレスを介して特定のエンドポイント アドレスでサービスにメッセージを送信するために使用されるチャネルを作成します。 (継承元 ChannelFactory<TChannel>) |
| CreateChannel(EndpointAddress) |
特定のエンドポイント アドレスでサービスにメッセージを送信するために使用されるチャネルを作成します。 (継承元 ChannelFactory<TChannel>) |
| CreateChannelWithActAsToken(SecurityToken, EndpointAddress, Uri) |
指定したトランスポート アドレスを介して、特定のエンドポイント アドレスでセキュリティ トークンとして機能するサービスにメッセージを送信するために使用されるチャネルを作成します。 (継承元 ChannelFactory<TChannel>) |
| CreateChannelWithActAsToken(SecurityToken, EndpointAddress) |
特定のエンドポイント アドレスでセキュリティ トークンとして機能するサービスにメッセージを送信するために使用されるチャネルを作成します。 (継承元 ChannelFactory<TChannel>) |
| CreateChannelWithActAsToken(SecurityToken) |
セキュリティ トークンとしての動作を使用してサービスにメッセージを送信するために使用されるチャネルを作成します。 (継承元 ChannelFactory<TChannel>) |
| CreateChannelWithIssuedToken(SecurityToken, EndpointAddress, Uri) |
指定したトランスポート アドレスを介して、特定のエンドポイント アドレスで発行されたセキュリティ トークンを使用してサービスにメッセージを送信するために使用されるチャネルを作成します。 (継承元 ChannelFactory<TChannel>) |
| CreateChannelWithIssuedToken(SecurityToken, EndpointAddress) |
特定のエンドポイント アドレスで発行されたセキュリティ トークンを使用してサービスにメッセージを送信するために使用されるチャネルを作成します。 (継承元 ChannelFactory<TChannel>) |
| CreateChannelWithIssuedToken(SecurityToken) |
発行されたセキュリティ トークンを使用してサービスにメッセージを送信するために使用されるチャネルを作成します。 (継承元 ChannelFactory<TChannel>) |
| CreateChannelWithOnBehalfOfToken(SecurityToken, EndpointAddress, Uri) |
指定したトランスポート アドレスを介して、特定のエンドポイント アドレスでセキュリティ トークンの代理としてサービスにメッセージを送信するために使用されるチャネルを作成します。 (継承元 ChannelFactory<TChannel>) |
| CreateChannelWithOnBehalfOfToken(SecurityToken, EndpointAddress) |
特定のエンドポイント アドレスでセキュリティ トークンに代わってサービスにメッセージを送信するために使用されるチャネルを作成します。 (継承元 ChannelFactory<TChannel>) |
| CreateChannelWithOnBehalfOfToken(SecurityToken) |
セキュリティ トークンの代理としてサービスにメッセージを送信するために使用されるチャネルを作成します。 (継承元 ChannelFactory<TChannel>) |
| CreateDescription() |
サービス エンドポイントの説明を作成します。 (継承元 ChannelFactory<TChannel>) |
| CreateFactory() |
ファクトリの現在のエンドポイントのチャネル ファクトリをビルドします。 (継承元 ChannelFactory) |
| EndClose(IAsyncResult) |
通信オブジェクトを閉じる非同期操作を完了します。 (継承元 CommunicationObject) |
| EndOpen(IAsyncResult) |
通信オブジェクトを開く非同期操作を完了します。 (継承元 CommunicationObject) |
| EnsureOpened() |
現在のチャネル ファクトリがまだ開いていない場合は開きます。 (継承元 ChannelFactory) |
| Equals(Object) |
指定したオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
| Fault() |
通信オブジェクトを現在の状態から障害状態に遷移させます。 (継承元 CommunicationObject) |
| GetCommunicationObjectType() |
通信オブジェクトの種類を取得します。 (継承元 CommunicationObject) |
| GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
| GetProperty<T>() |
要求された型指定されたオブジェクト (存在する場合) をチャネル スタック内の適切なレイヤーから返します。存在しない場合は |
| GetType() |
現在のインスタンスの Type を取得します。 (継承元 Object) |
| InitializeEndpoint(Binding, EndpointAddress) |
指定したバインディングとアドレスを使用して、チャネル ファクトリのサービス エンドポイントを初期化します。 (継承元 ChannelFactory) |
| InitializeEndpoint(ServiceEndpoint) |
指定したエンドポイントを使用して、チャネル ファクトリのサービス エンドポイントを初期化します。 (継承元 ChannelFactory) |
| InitializeEndpoint(String, EndpointAddress) |
指定したアドレスと構成を使用して、チャネル ファクトリのサービス エンドポイントを初期化します。 (継承元 ChannelFactory) |
| MemberwiseClone() |
現在の Objectの簡易コピーを作成します。 (継承元 Object) |
| OnAbort() |
現在のチャネル ファクトリの内部チャネル ファクトリを終了します。 (継承元 ChannelFactory) |
| OnBeginClose(TimeSpan, AsyncCallback, Object) |
状態オブジェクトが関連付けられている現在のチャネル ファクトリの内部チャネル ファクトリで非同期の閉じる操作を開始します。 (継承元 ChannelFactory) |
| OnBeginOpen(TimeSpan, AsyncCallback, Object) |
状態オブジェクトが関連付けられている現在のチャネル ファクトリの内部チャネル ファクトリで、非同期のオープン操作を開始します。 (継承元 ChannelFactory) |
| OnClose(TimeSpan) |
操作を完了するために、指定されたタイムアウトで内部チャネル ファクトリで close を呼び出します。 (継承元 ChannelFactory) |
| OnClosed() |
通信オブジェクトの終了状態への遷移中に呼び出されます。 (継承元 CommunicationObject) |
| OnClosing() |
通信オブジェクトの終了状態への遷移中に呼び出されます。 (継承元 CommunicationObject) |
| OnEndClose(IAsyncResult) |
現在のチャネル ファクトリの内部チャネル ファクトリで非同期の閉じる操作を完了します。 (継承元 ChannelFactory) |
| OnEndOpen(IAsyncResult) |
現在のチャネル ファクトリの内部チャネル ファクトリで非同期のオープン操作を完了します。 (継承元 ChannelFactory) |
| OnFaulted() |
同期障害操作の呼び出しにより、通信オブジェクトが障害状態に遷移した後に、処理を挿入します。 (継承元 CommunicationObject) |
| OnOpen(TimeSpan) |
現在のチャネル ファクトリの内部チャネル ファクトリで開く呼び出しで、操作を完了するためのタイムアウトを指定します。 (継承元 ChannelFactory) |
| OnOpened() |
チャネル ファクトリの ClientCredentials オブジェクトの読み取り専用コピーを初期化します。 (継承元 ChannelFactory) |
| OnOpening() |
このメソッドは、 WebChannelFactory<TChannel> を開いたときに呼び出されます。 |
| Open() |
通信オブジェクトが作成された状態から開かれた状態に遷移します。 (継承元 CommunicationObject) |
| Open(TimeSpan) |
指定した時間内に、通信オブジェクトが作成された状態から開かれた状態に遷移します。 (継承元 CommunicationObject) |
| ThrowIfDisposed() |
通信オブジェクトが破棄された場合に例外をスローします。 (継承元 CommunicationObject) |
| ThrowIfDisposedOrImmutable() |
State プロパティがCreated状態に設定されていない通信オブジェクトの場合は、例外をスローします。 (継承元 CommunicationObject) |
| ThrowIfDisposedOrNotOpen() |
通信オブジェクトが Opened 状態でない場合は、例外をスローします。 (継承元 CommunicationObject) |
| ToString() |
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |
イベント
| 名前 | 説明 |
|---|---|
| Closed |
通信オブジェクトが閉じた状態に遷移したときに発生します。 (継承元 CommunicationObject) |
| Closing |
通信オブジェクトが終了状態に遷移したときに発生します。 (継承元 CommunicationObject) |
| Faulted |
通信オブジェクトが障害状態に遷移したときに発生します。 (継承元 CommunicationObject) |
| Opened |
通信オブジェクトが開かれた状態に遷移したときに発生します。 (継承元 CommunicationObject) |
| Opening |
通信オブジェクトが開始状態に遷移したときに発生します。 (継承元 CommunicationObject) |
明示的なインターフェイスの実装
| 名前 | 説明 |
|---|---|
| IDisposable.Dispose() |
現在のチャネル ファクトリを閉じます。 (継承元 ChannelFactory) |