Classe WellKnownClientTypeEntry
Este artigo foi traduzido por máquina. Coloque o ponteiro do mouse sobre as frases do artigo para ver o texto original. Mais informações.
Tradução
Original

Classe WellKnownClientTypeEntry

Suspensões valores para um tipo de objeto registrado no cliente sistema autônomo um tipo de servidor ativado (telefonar única ou singleton).

Namespace:  System.Runtime.Remoting
Assembly:  mscorlib (em mscorlib.dll)

[ComVisibleAttribute(true)]
public class WellKnownClientTypeEntry : TypeEntry

Tipos de servidor ativado podem ser telefonar única ou singleton.Se uma classe estiver registrada sistema autônomo um tipo de telefonar única, uma nova instância é criada sempre que chega uma telefonar do cliente.Todas as chamadas para um objeto singleton são tratadas por uma instância desse objeto, a menos que esse objeto foi coletado.

Qualquer cliente que sabe o URI de um objeto de servidor ativado registrado possa obter um proxy para este objeto Registrando o canal que ele prefere com ChannelServices e ativar o objeto, chamando new ou Activator.GetObject. Para ativar um objeto de servidor ativado com new, é necessário registrar o tipo de objeto de servidor ativado no cliente usando o RegisterWellKnownClientType método. Chamando RegisterWellKnownClientType, você estará concedendo a infra estrutura do comunicação remota o local do objeto remoto, que permite que o new palavra-chave para criá-lo. Se, por Outros lado, usar o Activator.GetObject método para ativar um objeto de servidor ativado, você deve fornecê-lo com a URL do objeto sistema autônomo um argumento, portanto, não é necessário nenhum inscrição anterior no cliente.

Para obter uma descrição detalhada de objetos de servidor ativado e ativação do objeto remoto, consulte Activation of Objetos Remoto.

using System;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Channels.Http;

publicclass MyClient 
{
   publicstaticvoid Main()
   {
   // Create a 'HttpChannel' object and  register with channel services.
   ChannelServices.RegisterChannel(new HttpChannel());
   Console.WriteLine(" Start calling from Client One.......");
   WellKnownClientTypeEntry myWellKnownClientTypeEntry = 
                  new WellKnownClientTypeEntry(typeof(HelloServer),
                                  "http://localhost:8086/SayHello");
   myWellKnownClientTypeEntry.ApplicationUrl="http://localhost:8086/SayHello";
   RemotingConfiguration.RegisterWellKnownClientType(myWellKnownClientTypeEntry);
   // Get the proxy object for the remote object.
   HelloServer myHelloServerObject = new HelloServer();
   // Retrieve an array of object types registered on the // client end as well-known types.
   WellKnownClientTypeEntry [] myWellKnownClientTypeEntryCollection = 
          RemotingConfiguration.GetRegisteredWellKnownClientTypes();
   Console.WriteLine("The Application Url to activate the Remote Object :"
        +myWellKnownClientTypeEntryCollection[0].ApplicationUrl);
   Console.WriteLine("The 'WellKnownClientTypeEntry' object :"
            +myWellKnownClientTypeEntryCollection[0].ToString());
   // Make remote method calls.for (int i = 0; i < 5; i++)
         Console.WriteLine(myHelloServerObject.HelloMethod(" Client One"));
   }
}


import System.*;
import System.Runtime.Remoting.*;
import System.Runtime.Remoting.Channels.*;
import System.Runtime.Remoting.Channels.Http.*;

public class MyClient
{
    public static void main(String[] args)
    {
        // Create a 'HttpChannel' object and  register with channel services.
        ChannelServices.RegisterChannel(new HttpChannel());
        Console.WriteLine(" Start calling from Client One.......");
        WellKnownClientTypeEntry myWellKnownClientTypeEntry = 
            new WellKnownClientTypeEntry(HelloServer.class.ToType(),
            "http://localhost:8086/SayHello");
        myWellKnownClientTypeEntry.
            set_ApplicationUrl("http://localhost:8086/SayHello");
        RemotingConfiguration.RegisterWellKnownClientType(
            myWellKnownClientTypeEntry);
        // Get the proxy object for the remote object.
        HelloServer myHelloServerObject = new HelloServer();
        // Retrieve an array of object types registered on the 
        // client end as well-known types.
        WellKnownClientTypeEntry myWellKnownClientTypeEntryCollection[] =
            RemotingConfiguration.GetRegisteredWellKnownClientTypes();
        Console.WriteLine("The Application Url to activate the Remote Object :" 
            + myWellKnownClientTypeEntryCollection[0].get_ApplicationUrl());
        Console.WriteLine("The 'WellKnownClientTypeEntry' object :" 
            + myWellKnownClientTypeEntryCollection.get_Item(0).ToString());
        // Make remote method calls.
        for (int i = 0; i < 5; i++) {
            Console.WriteLine(myHelloServerObject.HelloMethod(" Client One"));
        }
    } //main
} //MyClient


System.Object
  System.Runtime.Remoting.TypeEntry
    System.Runtime.Remoting.WellKnownClientTypeEntry

Quaisquer membros static (Shared no Visual Basic) públicos deste tipo são thread-safe. Não há garantia de que qualquer membro de instância seja thread-safe.

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

o.NET Framework e.NET Compact Framework não oferecem suporte a todas as versões de cada plataforma. Para obter uma lista de versões suportadas, consulte Requisitos de sistema do .NET framework.

.NET Framework

Compatível com: 3.5, 3.0, 2.0, 1.1, 1.0

Contribuições da comunidade

ADICIONAR
Mostrar:
© 2016 Microsoft