ClientBase<TChannel> Konstruktory

Definice

Inicializuje novou instanci ClientBase<TChannel> třídy.

Přetížení

ClientBase<TChannel>()

Inicializuje novou instanci třídy pomocí výchozího cílového ClientBase<TChannel> koncového bodu z konfiguračního souboru aplikace.

ClientBase<TChannel>(InstanceContext, String, String)

Inicializuje novou instanci ClientBase<TChannel> třídy.

ClientBase<TChannel>(InstanceContext, Binding, EndpointAddress)

Inicializuje novou instanci ClientBase<TChannel> třídy.

ClientBase<TChannel>(String, String)

Inicializuje novou instanci ClientBase<TChannel> třídy.

ClientBase<TChannel>(String, EndpointAddress)

Inicializuje novou instanci ClientBase<TChannel> třídy pomocí zadané cílové adresy a informací o koncovém bodu.

ClientBase<TChannel>(InstanceContext, String)

Inicializuje novou instanci ClientBase<TChannel> třídy pomocí zadané služby zpětného volání a informací o konfiguraci koncového bodu.

ClientBase<TChannel>(InstanceContext, String, EndpointAddress)

Inicializuje novou instanci ClientBase<TChannel> třídy.

ClientBase<TChannel>(Binding, EndpointAddress)

Inicializuje novou instanci ClientBase<TChannel> třídy pomocí zadané vazby a cílové adresy.

ClientBase<TChannel>(String)

Inicializuje novou instanci třídy pomocí konfiguračních ClientBase<TChannel> informací zadaných v konfiguračním souboru aplikace pomocí endpointConfigurationName.

ClientBase<TChannel>(InstanceContext)

Inicializuje novou instanci ClientBase<TChannel> třídy pomocí objektu callbackInstance zpětného volání v duplexní konverzaci.

ClientBase<TChannel>(ServiceEndpoint)

Inicializuje novou instanci ClientBase<TChannel> třídy pomocí zadané ServiceEndpoint.

ClientBase<TChannel>(InstanceContext, ServiceEndpoint)

Inicializuje novou instanci ClientBase<TChannel> třídy pomocí zadaných InstanceContext a ServiceEndpoint objektů.

Poznámky

Slouží k vytvoření objektu klienta WCF z informací o koncovém bodu v konfiguračním souboru aplikace. Hlavní funkcí konstruktoru je vytvoření System.ServiceModel.ChannelFactory<TChannel> , kde parametr typu je typem cílového kontraktu služby.

ClientBase<TChannel>()

Zdroj:
ClientBase.cs
Zdroj:
ClientBase.cs
Zdroj:
ClientBase.cs

Inicializuje novou instanci třídy pomocí výchozího cílového ClientBase<TChannel> koncového bodu z konfiguračního souboru aplikace.

protected:
 ClientBase();
protected ClientBase ();
Protected Sub New ()

Výjimky

Konfigurační soubor neobsahuje žádné informace o výchozím koncovém bodu, více než jeden koncový bod v souboru nebo žádný konfigurační soubor.

Příklady

Následující příklad kódu ukazuje, jak klient používá tento konstruktor ve SampleServiceClient třídě, která rozšiřuje ClientBase<TChannel> třídu.

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

Poznámky

Pomocí tohoto konstruktoru vytvořte objekt klienta WCF pro vyvolání služby. Tento konstruktor používá parametr type jako cílový kontrakt a informace o vazbě a adrese z konfiguračního souboru aplikace.

Platí pro

ClientBase<TChannel>(InstanceContext, String, String)

Inicializuje novou instanci ClientBase<TChannel> třídy.

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)

Parametry

callbackInstance
InstanceContext

Objekt zpětného volání, který klient používá k naslouchání zpráv z připojené služby.

endpointConfigurationName
String

Název koncového bodu v konfiguračním souboru aplikace.

remoteAddress
String

Adresa služby.

Výjimky

Instance zpětného volání , endpointConfigurationNamenebo remoteAddress je null.

Koncový bod nelze najít nebo není platný kontrakt koncového bodu.

Poznámky

Pomocí tohoto konstruktoru můžete předat objekt služby, který implementuje kontrakt zpětného volání pro cílovou službu, a určit informace o cílovém koncovém bodu z názvu koncového bodu v konfiguračním souboru aplikace (cílová hodnota se nachází vyhledáním name atributu elementu koncového bodu> klienta<) a zadané adresy.

Viz také

Platí pro

ClientBase<TChannel>(InstanceContext, Binding, EndpointAddress)

Zdroj:
ClientBase.cs
Zdroj:
ClientBase.cs
Zdroj:
ClientBase.cs

Inicializuje novou instanci ClientBase<TChannel> třídy.

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)

Parametry

callbackInstance
InstanceContext

Služba zpětného volání.

binding
Binding

Vazba, se kterou se má služba volat.

remoteAddress
EndpointAddress

Adresa koncového bodu služby.

Výjimky

Instance zpětného volání , bindingnebo remoteAddress je null.

Platí pro

ClientBase<TChannel>(String, String)

Zdroj:
ClientBase.cs
Zdroj:
ClientBase.cs

Inicializuje novou instanci ClientBase<TChannel> třídy.

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)

Parametry

endpointConfigurationName
String

Název koncového bodu v konfiguračním souboru aplikace.

remoteAddress
String

Adresa služby.

Výjimky

endpointConfigurationName nebo remoteAddress je null.

Koncový bod nelze najít nebo není platný kontrakt koncového bodu.

Poznámky

Tento konstruktor slouží k určení informací o cílovém koncovém bodu z názvu koncového bodu v konfiguračním souboru aplikace (cílová hodnota se nachází vyhledáním name atributu elementu koncového bodu> klienta<) a zadané adresy.

Viz také

Platí pro

ClientBase<TChannel>(String, EndpointAddress)

Zdroj:
ClientBase.cs
Zdroj:
ClientBase.cs

Inicializuje novou instanci ClientBase<TChannel> třídy pomocí zadané cílové adresy a informací o koncovém bodu.

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)

Parametry

endpointConfigurationName
String

Název koncového bodu v konfiguračním souboru aplikace.

remoteAddress
EndpointAddress

Adresa služby.

Výjimky

endpointConfigurationName nebo remoteAddress je null.

Koncový bod nelze najít nebo není platný kontrakt koncového bodu.

Poznámky

Tento konstruktor slouží k určení informací o cílovém koncovém bodu z názvu koncového bodu v konfiguračním souboru aplikace (cílová hodnota se nachází vyhledáním name atributu elementu koncového bodu> klienta<) a zadané adresy.

Platí pro

ClientBase<TChannel>(InstanceContext, String)

Inicializuje novou instanci ClientBase<TChannel> třídy pomocí zadané služby zpětného volání a informací o konfiguraci koncového bodu.

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)

Parametry

callbackInstance
InstanceContext

Objekt zpětného volání, který klient používá k naslouchání zpráv z připojené služby.

endpointConfigurationName
String

Název koncového bodu v konfiguračním souboru aplikace.

Výjimky

Instance zpětného volání nebo endpointConfigurationName je null.

Koncový bod nelze najít nebo není platný kontrakt koncového bodu.

Poznámky

Tento konstruktor slouží k předání objektu služby, který implementuje kontrakt zpětného volání pro cílovou službu a určení informací o cílovém koncovém bodu z konfiguračního souboru klientské aplikace. Cílová hodnota se nachází vyhledáním atributu name elementu koncového bodu> klienta<.

Platí pro

ClientBase<TChannel>(InstanceContext, String, EndpointAddress)

Inicializuje novou instanci ClientBase<TChannel> třídy.

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)

Parametry

callbackInstance
InstanceContext

Objekt zpětného volání, který klient používá k naslouchání zpráv z připojené služby.

endpointConfigurationName
String

Název koncového bodu v konfiguračním souboru aplikace.

remoteAddress
EndpointAddress

Adresa služby.

Výjimky

Instance zpětného volání , endpointConfigurationNamenebo remoteAddress je null.

Koncový bod nelze najít nebo není platný kontrakt koncového bodu.

Poznámky

Pomocí tohoto konstruktoru můžete předat objekt služby, který implementuje kontrakt zpětného volání pro cílovou službu, a určit informace o cílovém koncovém bodu z názvu koncového bodu v konfiguračním souboru aplikace (cílová hodnota se nachází vyhledáním name atributu elementu koncového bodu> klienta<) a zadané adresy.

Viz také

Platí pro

ClientBase<TChannel>(Binding, EndpointAddress)

Zdroj:
ClientBase.cs
Zdroj:
ClientBase.cs
Zdroj:
ClientBase.cs

Inicializuje novou instanci ClientBase<TChannel> třídy pomocí zadané vazby a cílové adresy.

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)

Parametry

binding
Binding

Vazba, se kterou se má služba volat.

remoteAddress
EndpointAddress

Adresa koncového bodu služby.

Výjimky

binding nebo remoteAddress je null.

Platí pro

ClientBase<TChannel>(String)

Zdroj:
ClientBase.cs
Zdroj:
ClientBase.cs

Inicializuje novou instanci třídy pomocí konfiguračních ClientBase<TChannel> informací zadaných v konfiguračním souboru aplikace pomocí 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)

Parametry

endpointConfigurationName
String

Název koncového bodu v konfiguračním souboru aplikace.

Výjimky

Zadané informace o koncovém bodu jsou null.

Koncový bod nelze najít nebo není platný kontrakt koncového bodu.

Poznámky

Tento konstruktor použijte, pokud je v konfiguračním souboru aplikace více než jeden cílový koncový bod. Tato hodnota je name atributem elementu koncového bodu> klienta<.

Platí pro

ClientBase<TChannel>(InstanceContext)

Inicializuje novou instanci ClientBase<TChannel> třídy pomocí objektu callbackInstance zpětného volání v duplexní konverzaci.

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)

Parametry

callbackInstance
InstanceContext

Objekt zpětného volání, který klientská aplikace používá k naslouchání zpráv z připojené služby.

Výjimky

Instance zpětného volání je null.

Konfigurační soubor neobsahuje žádné informace o výchozím koncovém bodu, více než jeden koncový bod v souboru nebo žádný konfigurační soubor.

Příklady

Následující příklad kódu ukazuje, jak pomocí tohoto konstruktoru SampleDuplexHelloClient s třídou předat objekt zpětného volání, který naslouchá zprávám ze služby.

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

Poznámky

Tento konstruktor použijte, pokud kontrakt služby vyžaduje instanci služby zpětného volání. Cílový koncový bod je vytvořen z parametru typu a informací v konfiguračním souboru aplikace.

Viz také

Platí pro

ClientBase<TChannel>(ServiceEndpoint)

Zdroj:
ClientBase.cs
Zdroj:
ClientBase.cs
Zdroj:
ClientBase.cs

Inicializuje novou instanci ClientBase<TChannel> třídy pomocí zadané ServiceEndpoint.

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)

Parametry

endpoint
ServiceEndpoint

Koncový bod služby, který umožňuje klientům najít službu a komunikovat s ní.

Platí pro

ClientBase<TChannel>(InstanceContext, ServiceEndpoint)

Inicializuje novou instanci ClientBase<TChannel> třídy pomocí zadaných InstanceContext a ServiceEndpoint objektů.

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)

Parametry

callbackInstance
InstanceContext

Objekt zpětného volání, který klientská aplikace používá k naslouchání zpráv z připojené služby.

endpoint
ServiceEndpoint

Koncový bod služby, který umožňuje klientům najít službu a komunikovat s ní.

Platí pro