ClientBase<TChannel> コンストラクター
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ClientBase<TChannel> クラスの新しいインスタンスを初期化します。
オーバーロード
注釈
を使用して、アプリケーション構成ファイル内のエンドポイント情報から WCF クライアント オブジェクトを作成します。 コンストラクターの主な機能は、型パラメーターがターゲットのサービス コントラクトの型である System.ServiceModel.ChannelFactory<TChannel> を作成することです。
ClientBase<TChannel>()
- ソース:
- ClientBase.cs
- ソース:
- ClientBase.cs
- ソース:
- ClientBase.cs
アプリケーション構成ファイルの既定のターゲット エンドポイントを使用して、ClientBase<TChannel> クラスの新しいインスタンスを初期化します。
protected:
ClientBase();
protected ClientBase ();
Protected Sub New ()
例外
構成ファイルに既定のエンドポイント情報がないか、複数のエンドポイントがあります。または、構成ファイルがありません。
例
次のコード例は、クライアントが SampleServiceClient
クラスを拡張する ClientBase<TChannel> クラスの中でこのコンストラクターをどのように使用するかを示しています。
using System;
using System.ServiceModel;
using System.ServiceModel.Channels;
public class Client
{
public static void Main()
{
// Picks up configuration from the config file.
SampleServiceClient wcfClient = new SampleServiceClient();
try
{
// Making calls.
Console.WriteLine("Enter the greeting to send: ");
string greeting = Console.ReadLine();
Console.WriteLine("The service responded: " + wcfClient.SampleMethod(greeting));
Console.WriteLine("Press ENTER to exit:");
Console.ReadLine();
// Done with service.
wcfClient.Close();
Console.WriteLine("Done!");
}
catch (TimeoutException timeProblem)
{
Console.WriteLine("The service operation timed out. " + timeProblem.Message);
wcfClient.Abort();
Console.Read();
}
catch(CommunicationException commProblem)
{
Console.WriteLine("There was a communication problem. " + commProblem.Message);
wcfClient.Abort();
Console.Read();
}
}
}
Imports System.ServiceModel
Imports System.ServiceModel.Channels
Public Class Client
Public Shared Sub Main()
' Picks up configuration from the config file.
Dim wcfClient As New SampleServiceClient()
Try
' Making calls.
Console.WriteLine("Enter the greeting to send: ")
Dim greeting = Console.ReadLine()
Console.WriteLine("The service responded: " & wcfClient.SampleMethod(greeting))
Console.WriteLine("Press ENTER to exit:")
Console.ReadLine()
' Done with service.
wcfClient.Close()
Console.WriteLine("Done!")
Catch timeProblem As TimeoutException
Console.WriteLine("The service operation timed out. " & timeProblem.Message)
wcfClient.Abort()
Console.Read()
Catch commProblem As CommunicationException
Console.WriteLine("There was a communication problem. " & commProblem.Message)
wcfClient.Abort()
Console.Read()
End Try
End Sub
End Class
注釈
このコンストラクターを使用して、サービスを呼び出す WCF クライアント オブジェクトを作成します。 このコンストラクターは、ターゲット コントラクトとしての型パラメーターと、アプリケーション構成ファイルのバインド情報とアドレス情報を使用します。
適用対象
ClientBase<TChannel>(InstanceContext, String, String)
ClientBase<TChannel> クラスの新しいインスタンスを初期化します。
protected:
ClientBase(System::ServiceModel::InstanceContext ^ callbackInstance, System::String ^ endpointConfigurationName, System::String ^ remoteAddress);
protected ClientBase (System.ServiceModel.InstanceContext callbackInstance, string endpointConfigurationName, string remoteAddress);
new System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)> : System.ServiceModel.InstanceContext * string * string -> System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)>
Protected Sub New (callbackInstance As InstanceContext, endpointConfigurationName As String, remoteAddress As String)
パラメーター
- callbackInstance
- InstanceContext
接続サービスからのメッセージをリッスンするためにクライアントが使用するコールバック オブジェクト。
- endpointConfigurationName
- String
アプリケーション構成ファイル内のエンドポイントの名前。
- remoteAddress
- String
サービスのアドレス。
例外
コールバック インスタンス、endpointConfigurationName
、または remoteAddress
は null
です。
エンドポイントが見つからないか、エンドポイント コントラクトが有効ではありません。
注釈
このコンストラクターを使用して、ターゲット サービスのコールバック コントラクトを実装するサービス オブジェクトを渡し、アプリケーション構成ファイル内のエンドポイントの名前からターゲット エンドポイント情報を決定します (ターゲット値は、クライアント <エンドポイント>要素の属性を見つけることname
によって配置されます)。
こちらもご覧ください
適用対象
ClientBase<TChannel>(InstanceContext, Binding, EndpointAddress)
- ソース:
- ClientBase.cs
- ソース:
- ClientBase.cs
- ソース:
- ClientBase.cs
ClientBase<TChannel> クラスの新しいインスタンスを初期化します。
protected:
ClientBase(System::ServiceModel::InstanceContext ^ callbackInstance, System::ServiceModel::Channels::Binding ^ binding, System::ServiceModel::EndpointAddress ^ remoteAddress);
protected ClientBase (System.ServiceModel.InstanceContext callbackInstance, System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress);
new System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)> : System.ServiceModel.InstanceContext * System.ServiceModel.Channels.Binding * System.ServiceModel.EndpointAddress -> System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)>
Protected Sub New (callbackInstance As InstanceContext, binding As Binding, remoteAddress As EndpointAddress)
パラメーター
- callbackInstance
- InstanceContext
コールバック サービス。
- binding
- Binding
サービスを呼び出すバインド。
- remoteAddress
- EndpointAddress
サービス エンドポイントのアドレス。
例外
コールバック インスタンス、binding
、または remoteAddress
は null
です。
適用対象
ClientBase<TChannel>(String, String)
- ソース:
- ClientBase.cs
- ソース:
- ClientBase.cs
ClientBase<TChannel> クラスの新しいインスタンスを初期化します。
protected:
ClientBase(System::String ^ endpointConfigurationName, System::String ^ remoteAddress);
protected ClientBase (string endpointConfigurationName, string remoteAddress);
new System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)> : string * string -> System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)>
Protected Sub New (endpointConfigurationName As String, remoteAddress As String)
パラメーター
- endpointConfigurationName
- String
アプリケーション構成ファイル内のエンドポイントの名前。
- remoteAddress
- String
サービスのアドレス。
例外
endpointConfigurationName
または remoteAddress
が null
です。
エンドポイントが見つからないか、エンドポイント コントラクトが有効ではありません。
注釈
このコンストラクターを使用して、アプリケーション構成ファイル内のエンドポイントの名前 (ターゲット値は、クライアント <エンドポイント要素の属性を見つけることによって配置されます) と指定したアドレスからターゲット エンドポイント>情報を確認します。name
こちらもご覧ください
適用対象
ClientBase<TChannel>(String, EndpointAddress)
- ソース:
- ClientBase.cs
- ソース:
- ClientBase.cs
指定したターゲット アドレスとエンドポイント情報を使用して、ClientBase<TChannel> クラスの新しいインスタンスを初期化します。
protected:
ClientBase(System::String ^ endpointConfigurationName, System::ServiceModel::EndpointAddress ^ remoteAddress);
protected ClientBase (string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress);
new System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)> : string * System.ServiceModel.EndpointAddress -> System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)>
Protected Sub New (endpointConfigurationName As String, remoteAddress As EndpointAddress)
パラメーター
- endpointConfigurationName
- String
アプリケーション構成ファイル内のエンドポイントの名前。
- remoteAddress
- EndpointAddress
サービスのアドレス。
例外
endpointConfigurationName
または remoteAddress
が null
です。
エンドポイントが見つからないか、エンドポイント コントラクトが有効ではありません。
注釈
このコンストラクターを使用して、アプリケーション構成ファイル内のエンドポイントの名前 (ターゲット値は、クライアント <エンドポイント要素の属性を見つけることによって配置されます) と指定したアドレスからターゲット エンドポイント>情報を確認します。name
適用対象
ClientBase<TChannel>(InstanceContext, String)
指定したコールバック サービスとエンドポイント構成情報を使用して、ClientBase<TChannel> クラスの新しいインスタンスを初期化します。
protected:
ClientBase(System::ServiceModel::InstanceContext ^ callbackInstance, System::String ^ endpointConfigurationName);
protected ClientBase (System.ServiceModel.InstanceContext callbackInstance, string endpointConfigurationName);
new System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)> : System.ServiceModel.InstanceContext * string -> System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)>
Protected Sub New (callbackInstance As InstanceContext, endpointConfigurationName As String)
パラメーター
- callbackInstance
- InstanceContext
接続サービスからのメッセージをリッスンするためにクライアントが使用するコールバック オブジェクト。
- endpointConfigurationName
- String
アプリケーション構成ファイル内のエンドポイントの名前。
例外
コールバック インスタンスまたは endpointConfigurationName
が null
です。
エンドポイントが見つからないか、エンドポイント コントラクトが有効ではありません。
注釈
このコンストラクターを使用して、ターゲットのサービスのコールバック コントラクトを実装するサービス オブジェクトを渡し、クライアント アプリケーション構成ファイルからのターゲット エンドポイント情報を特定します。 ターゲット値は、クライアント <エンドポイント>要素の属性をname
見つけることによって配置されます。
適用対象
ClientBase<TChannel>(InstanceContext, String, EndpointAddress)
ClientBase<TChannel> クラスの新しいインスタンスを初期化します。
protected:
ClientBase(System::ServiceModel::InstanceContext ^ callbackInstance, System::String ^ endpointConfigurationName, System::ServiceModel::EndpointAddress ^ remoteAddress);
protected ClientBase (System.ServiceModel.InstanceContext callbackInstance, string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress);
new System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)> : System.ServiceModel.InstanceContext * string * System.ServiceModel.EndpointAddress -> System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)>
Protected Sub New (callbackInstance As InstanceContext, endpointConfigurationName As String, remoteAddress As EndpointAddress)
パラメーター
- callbackInstance
- InstanceContext
接続サービスからのメッセージをリッスンするためにクライアントが使用するコールバック オブジェクト。
- endpointConfigurationName
- String
アプリケーション構成ファイル内のエンドポイントの名前。
- remoteAddress
- EndpointAddress
サービスのアドレス。
例外
コールバック インスタンス、endpointConfigurationName
、または remoteAddress
は null
です。
エンドポイントが見つからないか、エンドポイント コントラクトが有効ではありません。
注釈
このコンストラクターを使用して、ターゲット サービスのコールバック コントラクトを実装するサービス オブジェクトを渡し、アプリケーション構成ファイル内のエンドポイントの名前からターゲット エンドポイント情報を決定します (ターゲット値は、クライアント <エンドポイント>要素の属性を見つけることname
によって配置されます)。
こちらもご覧ください
適用対象
ClientBase<TChannel>(Binding, EndpointAddress)
- ソース:
- ClientBase.cs
- ソース:
- ClientBase.cs
- ソース:
- ClientBase.cs
指定したバインドとターゲット アドレスを使用して、ClientBase<TChannel> クラスの新しいインスタンスを初期化します。
protected:
ClientBase(System::ServiceModel::Channels::Binding ^ binding, System::ServiceModel::EndpointAddress ^ remoteAddress);
protected ClientBase (System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress);
new System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)> : System.ServiceModel.Channels.Binding * System.ServiceModel.EndpointAddress -> System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)>
Protected Sub New (binding As Binding, remoteAddress As EndpointAddress)
パラメーター
- binding
- Binding
サービスを呼び出すために使用されるバインディング。
- remoteAddress
- EndpointAddress
サービス エンドポイントのアドレス。
例外
binding
または remoteAddress
が null
です。
適用対象
ClientBase<TChannel>(String)
- ソース:
- ClientBase.cs
- ソース:
- ClientBase.cs
ClientBase<TChannel> によるアプリケーション構成ファイルに指定された構成情報を使用して、endpointConfigurationName
クラスの新しいインスタンスを初期化します。
protected:
ClientBase(System::String ^ endpointConfigurationName);
protected ClientBase (string endpointConfigurationName);
new System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)> : string -> System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)>
Protected Sub New (endpointConfigurationName As String)
パラメーター
- endpointConfigurationName
- String
アプリケーション構成ファイル内のエンドポイントの名前。
例外
指定されたエンドポイント情報が null
です。
エンドポイントが見つからないか、エンドポイント コントラクトが有効ではありません。
注釈
アプリケーション構成ファイル内で複数のターゲット エンドポイントが存在する場合にこのコンストラクターを使用します。 この値は、 name
クライアント <エンドポイント> 要素の属性です。
適用対象
ClientBase<TChannel>(InstanceContext)
ClientBase<TChannel> クラスを双方向通信でのコールバック オブジェクトとして使用する callbackInstance
クラスの新しいインスタンスを初期化します。
protected:
ClientBase(System::ServiceModel::InstanceContext ^ callbackInstance);
protected ClientBase (System.ServiceModel.InstanceContext callbackInstance);
new System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)> : System.ServiceModel.InstanceContext -> System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)>
Protected Sub New (callbackInstance As InstanceContext)
パラメーター
- callbackInstance
- InstanceContext
接続サービスからのメッセージをリッスンするためにクライアント アプリケーションが使用するコールバック オブジェクト。
例外
コールバック インスタンスが null
です。
構成ファイルに既定のエンドポイント情報がないか、複数のエンドポイントがあります。または、構成ファイルがありません。
例
次のコード例は、このコンストラクターと SampleDuplexHelloClient
クラスを使用して、サービスから送信されるメッセージをリッスンするコールバック オブジェクトを渡す方法を示しています。
using System;
using System.ServiceModel;
using System.ServiceModel.Channels;
using System.Threading;
namespace Microsoft.WCF.Documentation
{
[CallbackBehaviorAttribute(
IncludeExceptionDetailInFaults= true,
UseSynchronizationContext=true,
ValidateMustUnderstand=true
)]
public class Client : SampleDuplexHelloCallback
{
AutoResetEvent waitHandle;
public Client()
{
waitHandle = new AutoResetEvent(false);
}
public void Run()
{
// Picks up configuration from the configuration file.
SampleDuplexHelloClient wcfClient
= new SampleDuplexHelloClient(new InstanceContext(this), "WSDualHttpBinding_SampleDuplexHello");
try
{
Console.ForegroundColor = ConsoleColor.White;
Console.WriteLine("Enter a greeting to send and press ENTER: ");
Console.Write(">>> ");
Console.ForegroundColor = ConsoleColor.Green;
string greeting = Console.ReadLine();
Console.ForegroundColor = ConsoleColor.White;
Console.WriteLine("Called service with: \r\n\t" + greeting);
wcfClient.Hello(greeting);
Console.WriteLine("Execution passes service call and moves to the WaitHandle.");
this.waitHandle.WaitOne();
Console.ForegroundColor = ConsoleColor.Blue;
Console.WriteLine("Set was called.");
Console.Write("Press ");
Console.ForegroundColor = ConsoleColor.Red;
Console.Write("ENTER");
Console.ForegroundColor = ConsoleColor.Blue;
Console.Write(" to exit...");
Console.ReadLine();
}
catch (TimeoutException timeProblem)
{
Console.WriteLine("The service operation timed out. " + timeProblem.Message);
Console.ReadLine();
}
catch (CommunicationException commProblem)
{
Console.WriteLine("There was a communication problem. " + commProblem.Message);
Console.ReadLine();
}
}
public static void Main()
{
Client client = new Client();
client.Run();
}
public void Reply(string response)
{
Console.WriteLine("Received output.");
Console.WriteLine("\r\n\t" + response);
this.waitHandle.Set();
}
}
}
Imports System.ServiceModel
Imports System.ServiceModel.Channels
Imports System.Threading
Namespace Microsoft.WCF.Documentation
<CallbackBehaviorAttribute(IncludeExceptionDetailInFaults:= True, UseSynchronizationContext:=True, ValidateMustUnderstand:=True)> _
Public Class Client
Implements SampleDuplexHelloCallback
Private waitHandle As AutoResetEvent
Public Sub New()
waitHandle = New AutoResetEvent(False)
End Sub
Public Sub Run()
' Picks up configuration from the configuration file.
Dim wcfClient As New SampleDuplexHelloClient(New InstanceContext(Me), "WSDualHttpBinding_SampleDuplexHello")
Try
Console.ForegroundColor = ConsoleColor.White
Console.WriteLine("Enter a greeting to send and press ENTER: ")
Console.Write(">>> ")
Console.ForegroundColor = ConsoleColor.Green
Dim greeting As String = Console.ReadLine()
Console.ForegroundColor = ConsoleColor.White
Console.WriteLine("Called service with: " & Constants.vbCrLf & Constants.vbTab & greeting)
wcfClient.Hello(greeting)
Console.WriteLine("Execution passes service call and moves to the WaitHandle.")
Me.waitHandle.WaitOne()
Console.ForegroundColor = ConsoleColor.Blue
Console.WriteLine("Set was called.")
Console.Write("Press ")
Console.ForegroundColor = ConsoleColor.Red
Console.Write("ENTER")
Console.ForegroundColor = ConsoleColor.Blue
Console.Write(" to exit...")
Console.ReadLine()
Catch timeProblem As TimeoutException
Console.WriteLine("The service operation timed out. " & timeProblem.Message)
Console.ReadLine()
Catch commProblem As CommunicationException
Console.WriteLine("There was a communication problem. " & commProblem.Message)
Console.ReadLine()
End Try
End Sub
Public Shared Sub Main()
Dim client As New Client()
client.Run()
End Sub
Public Sub Reply(ByVal response As String) Implements SampleDuplexHelloCallback.Reply
Console.WriteLine("Received output.")
Console.WriteLine(Constants.vbCrLf & Constants.vbTab & response)
Me.waitHandle.Set()
End Sub
End Class
End Namespace
注釈
このコンストラクターは、サービス コントラクトがコールバック サービス インスタンスを必要とする場合に使用します。 ターゲット エンドポイントは、型パラメーターと、アプリケーション構成ファイルの情報から構築されます。
こちらもご覧ください
適用対象
ClientBase<TChannel>(ServiceEndpoint)
- ソース:
- ClientBase.cs
- ソース:
- ClientBase.cs
- ソース:
- ClientBase.cs
指定した ServiceEndpoint を使用して ClientBase<TChannel> クラスの新しいインスタンスを初期化します。
protected:
ClientBase(System::ServiceModel::Description::ServiceEndpoint ^ endpoint);
protected ClientBase (System.ServiceModel.Description.ServiceEndpoint endpoint);
new System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)> : System.ServiceModel.Description.ServiceEndpoint -> System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)>
Protected Sub New (endpoint As ServiceEndpoint)
パラメーター
- endpoint
- ServiceEndpoint
クライアントがサービスを検索してサービスと通信できるようにするサービス エンドポイント。
適用対象
ClientBase<TChannel>(InstanceContext, ServiceEndpoint)
指定した ClientBase<TChannel> オブジェクトと InstanceContext オブジェクトを使用して、ServiceEndpoint クラスの新しいインスタンスを初期化します。
protected:
ClientBase(System::ServiceModel::InstanceContext ^ callbackInstance, System::ServiceModel::Description::ServiceEndpoint ^ endpoint);
protected ClientBase (System.ServiceModel.InstanceContext callbackInstance, System.ServiceModel.Description.ServiceEndpoint endpoint);
new System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)> : System.ServiceModel.InstanceContext * System.ServiceModel.Description.ServiceEndpoint -> System.ServiceModel.ClientBase<'Channel (requires 'Channel : null)>
Protected Sub New (callbackInstance As InstanceContext, endpoint As ServiceEndpoint)
パラメーター
- callbackInstance
- InstanceContext
接続サービスからのメッセージをリッスンするためにクライアント アプリケーションが使用するコールバック オブジェクト。
- endpoint
- ServiceEndpoint
クライアントがサービスを検索してサービスと通信できるようにするサービス エンドポイント。
適用対象
.NET