ClientBase<TChannel> クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
サービスを呼び出すことができる Windows Communication Foundation (WCF) クライアント オブジェクトの作成に使用される基本実装を提供します。
generic <typename TChannel>
where TChannel : classpublic ref class ClientBase abstract : System::ServiceModel::ICommunicationObject
generic <typename TChannel>
where TChannel : classpublic ref class ClientBase abstract : IAsyncDisposable, IDisposable, System::ServiceModel::ICommunicationObject
generic <typename TChannel>
where TChannel : classpublic ref class ClientBase abstract : IDisposable, System::ServiceModel::ICommunicationObject
public abstract class ClientBase<TChannel> : System.ServiceModel.ICommunicationObject where TChannel : class
public abstract class ClientBase<TChannel> : IAsyncDisposable, IDisposable, System.ServiceModel.ICommunicationObject where TChannel : class
public abstract class ClientBase<TChannel> : IDisposable, System.ServiceModel.ICommunicationObject where TChannel : class
type ClientBase<'Channel (requires 'Channel : null)> = class
interface ICommunicationObject
type ClientBase<'Channel (requires 'Channel : null)> = class
interface IDisposable
interface ICommunicationObject
interface IAsyncDisposable
type ClientBase<'Channel (requires 'Channel : null)> = class
interface ICommunicationObject
interface IDisposable
Public MustInherit Class ClientBase(Of TChannel)
Implements ICommunicationObject
Public MustInherit Class ClientBase(Of TChannel)
Implements IAsyncDisposable, ICommunicationObject, IDisposable
Public MustInherit Class ClientBase(Of TChannel)
Implements ICommunicationObject, IDisposable
型パラメーター
- TChannel
サービスへの接続に使用するチャネル。
- 継承
-
ClientBase<TChannel>
- 派生
- 実装
例
次のコード例は、ServiceModel メタデータ ユーティリティ ツール (Svcutil.exe)ClientBase<TChannel> クラスを拡張して WCF クライアント クラスを作成する方法を示しています。
public partial class SampleServiceClient : System.ServiceModel.ClientBase<ISampleService>, ISampleService
{
public SampleServiceClient()
{
}
public SampleServiceClient(string endpointConfigurationName) :
base(endpointConfigurationName)
{
}
public SampleServiceClient(string endpointConfigurationName, string remoteAddress) :
base(endpointConfigurationName, remoteAddress)
{
}
public SampleServiceClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) :
base(endpointConfigurationName, remoteAddress)
{
}
public SampleServiceClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) :
base(binding, remoteAddress)
{
}
public string SampleMethod(string msg)
{
return base.Channel.SampleMethod(msg);
}
}
<System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")> _
Partial Public Class SampleServiceClient
Inherits System.ServiceModel.ClientBase(Of ISampleService)
Implements ISampleService
Public Sub New()
End Sub
Public Sub New(ByVal endpointConfigurationName As String)
MyBase.New(endpointConfigurationName)
End Sub
Public Sub New(ByVal endpointConfigurationName As String, ByVal remoteAddress As String)
MyBase.New(endpointConfigurationName, remoteAddress)
End Sub
Public Sub New(ByVal endpointConfigurationName As String, _
ByVal remoteAddress As System.ServiceModel.EndpointAddress)
MyBase.New(endpointConfigurationName, remoteAddress)
End Sub
Public Sub New(ByVal binding As System.ServiceModel.Channels.Binding, _
ByVal remoteAddress As System.ServiceModel.EndpointAddress)
MyBase.New(binding, remoteAddress)
End Sub
Public Function SampleMethod(ByVal msg As String) As String Implements ISampleService.SampleMethod
Return MyBase.Channel.SampleMethod(msg)
End Function
End Class
注釈
ClientBase<TChannel> クラスを拡張して、サービスへの接続に使用できるカスタム WCF クライアント オブジェクトを作成します。 通常、WCF クライアントの基本クラスは、ServiceModel メタデータ ユーティリティ ツール (Svcutil.exe) などのツールによってユーザーに代わって拡張されます。 例については、「例」セクションを参照してください。
ClientBase<TChannel> クラスは、インターフェイスと System.ServiceModel.ChannelFactory<TChannel> クラスの使用よりもオブジェクトを優先する開発者が迅速かつ簡単に使用できます。 いずれの場合も、このクラスは、System.ServiceModel.ChannelFactory<TChannel> クラスと System.ServiceModel.IClientChannel インターフェイスのメソッドと機能をラップまたは公開します。
System.ServiceModel.ServiceHost クラスを使用する場合と同様に、呼び出しを行ったり、Openを呼び出したりする前に、クラスを作成し、エンドポイント、チャネル ファクトリ、またはセキュリティ情報を変更できます。 詳細については、「WCF クライアント
このクラスから派生するマネージド C++ ユーザーの特別な注意:
デストラクターではなく、クリーンアップ コードを (On)(Begin)Close (または OnAbort) に配置します。
デストラクターを使用しないでください。これにより、コンパイラは IDisposableを自動生成します。
参照以外のメンバーは避けてください。コンパイラが IDisposableを自動生成する可能性があります。
ファイナライザーを使用しないでください。ただし、ビルド警告を含める場合は、ビルド警告を抑制し、SuppressFinalize(Object) とファイナライザー自体を (On)(Begin)Close (または OnAbort) から呼び出して、自動生成された IDisposable 動作をエミュレートする必要があります。
コンストラクター
プロパティ
CacheSetting |
キャッシュ設定を取得または設定します。 |
Channel |
さまざまな構成済みのサービス エンドポイントにメッセージを送信するために使用される内部チャネルを取得します。 |
ChannelFactory |
基になる ChannelFactory<TChannel> オブジェクトを取得します。 |
ClientCredentials |
操作の呼び出しに使用されるクライアント資格情報を取得します。 |
Endpoint |
WCF クライアントが接続できるサービスのターゲット エンドポイントを取得します。 |
InnerChannel |
基になる IClientChannel 実装を取得します。 |
State |
ClientBase<TChannel> オブジェクトの現在の状態を取得します。 |
メソッド
Abort() |
ClientBase<TChannel> オブジェクトを現在の状態から閉じた状態に直ちに遷移させます。 |
Close() |
ClientBase<TChannel> オブジェクトを現在の状態から閉じた状態に遷移させます。 |
CloseAsync() |
サービスを呼び出すことができる Windows Communication Foundation (WCF) クライアント オブジェクトの作成に使用される基本実装を提供します。 |
CreateChannel() |
サービスに新しいチャネルを返します。 |
DisplayInitializationUI() |
チャネルを使用する前に初期化する必要がある場合は、ユーザー インターフェイスを表示するように内部チャネルに指示します。 |
Equals(Object) |
指定したオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
GetDefaultValueForInitialization<T>() |
C# の既定のキーワードの動作をレプリケートします。 |
GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
GetType() |
現在のインスタンスの Type を取得します。 (継承元 Object) |
InvokeAsync(ClientBase<TChannel>.BeginOperationDelegate, Object[], ClientBase<TChannel>.EndOperationDelegate, SendOrPostCallback, Object) |
イベント ベースの非同期パターンを実装するためのサポートを提供します。 このパターンの詳細については、「イベント ベースの非同期パターンの概要」を参照してください。 |
MemberwiseClone() |
現在の Objectの簡易コピーを作成します。 (継承元 Object) |
Open() |
ClientBase<TChannel> オブジェクトが作成された状態から開かれた状態に遷移します。 |
ToString() |
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |
明示的なインターフェイスの実装
拡張メソッド
ConfigureAwait(IAsyncDisposable, Boolean) |
非同期破棄から返されるタスクの待機を実行する方法を構成します。 |
適用対象
.NET