Partage via


ActivatedServiceTypeEntry Classe

Définition

Contient les valeurs d'un type d'objet inscrit côté service en tant que type pouvant être activé sur demande par un client.

public ref class ActivatedServiceTypeEntry : System::Runtime::Remoting::TypeEntry
public class ActivatedServiceTypeEntry : System.Runtime.Remoting.TypeEntry
[System.Runtime.InteropServices.ComVisible(true)]
public class ActivatedServiceTypeEntry : System.Runtime.Remoting.TypeEntry
type ActivatedServiceTypeEntry = class
    inherit TypeEntry
[<System.Runtime.InteropServices.ComVisible(true)>]
type ActivatedServiceTypeEntry = class
    inherit TypeEntry
Public Class ActivatedServiceTypeEntry
Inherits TypeEntry
Héritage
ActivatedServiceTypeEntry
Attributs

Exemples

#using <System.Runtime.Remoting.dll>
#using <ActivatedServiceTypeEntry_ObjectType_Share.dll>

using namespace System;
using namespace System::Runtime::Remoting;
using namespace System::Runtime::Remoting::Channels;
using namespace System::Runtime::Remoting::Channels::Tcp;
void main()
{
   ChannelServices::RegisterChannel( gcnew TcpChannel( 8082 ) );
   
   // Create an instance of 'ActivatedServiceTypeEntry' class
   // which holds the values for 'HelloServer' type.
   ActivatedServiceTypeEntry^ myActivatedServiceTypeEntry =
      gcnew ActivatedServiceTypeEntry( HelloServer::typeid );
   
   // Register an object Type on the service end so that 
   // it can be activated on request from a client.
   RemotingConfiguration::RegisterActivatedServiceType(
      myActivatedServiceTypeEntry );
   
   // Get the registered activated service types.
   array<ActivatedServiceTypeEntry^>^ activatedServiceEntries =
      RemotingConfiguration::GetRegisteredActivatedServiceTypes();
   Console::WriteLine( "Information of first registered activated" +
     " service type :" );
   Console::WriteLine( "Object type: {0}",
      activatedServiceEntries[ 0 ]->ObjectType->ToString() );
   Console::WriteLine( "Description: {0}",
      activatedServiceEntries[ 0 ]->ToString() );

   Console::WriteLine( "Press enter to stop this process" );
   Console::ReadLine();
}
using System;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Channels.Tcp;

public class MyClient
{
   public static void Main()
   {
      ChannelServices.RegisterChannel(new TcpChannel(8082));
      // Create an instance of 'ActivatedServiceTypeEntry' class
      // which holds the values for 'HelloServer' type.
      ActivatedServiceTypeEntry myActivatedServiceTypeEntry =
                   new ActivatedServiceTypeEntry(typeof(HelloServer));
      // Register an object Type on the service end so that
      // it can be activated on request from a client.
      RemotingConfiguration.RegisterActivatedServiceType(
                                         myActivatedServiceTypeEntry);
      // Get the registered activated service types .
      ActivatedServiceTypeEntry[] myActivatedServiceEntries =
          RemotingConfiguration.GetRegisteredActivatedServiceTypes();
      Console.WriteLine("Information of first registered activated "
                             +" service type :");
      Console.WriteLine("Object type: "
                       +myActivatedServiceEntries[0].ObjectType);
      Console.WriteLine("Description: "
                           +myActivatedServiceEntries[0].ToString());
      Console.WriteLine("Press enter to stop this process");
      Console.ReadLine();
   }
}
Imports System.Runtime.Remoting
Imports System.Runtime.Remoting.Channels
Imports System.Runtime.Remoting.Channels.Tcp

Public Class MyClient
   
   Public Shared Sub Main()
      ChannelServices.RegisterChannel(New TcpChannel(8082))
      ' Create an instance of 'ActivatedServiceTypeEntry' class
      ' which holds the values for 'HelloServer' type.
      Dim myActivatedServiceTypeEntry As New ActivatedServiceTypeEntry(GetType(HelloServer))
      ' Register an object Type on the service end so that 
      ' it can be activated on request from a client.
      RemotingConfiguration.RegisterActivatedServiceType(myActivatedServiceTypeEntry)
      ' Get the registered activated service types .
      Dim myActivatedServiceEntries As ActivatedServiceTypeEntry() = RemotingConfiguration. _
                                                         GetRegisteredActivatedServiceTypes()
      Console.WriteLine("Information of first registered activated " + " service type :")
      Console.WriteLine("Object type: " + myActivatedServiceEntries(0).ObjectType.ToString())
      Console.WriteLine("Description: " + myActivatedServiceEntries(0).ToString())
      Console.WriteLine("Press enter to stop this process")
      Console.ReadLine()
   End Sub
End Class

Remarques

La classe actuelle est utilisée par la RemotingConfiguration.RegisterActivatedServiceType méthode, qui est l’équivalent côté serveur de la RemotingConfiguration.RegisterActivatedClientType méthode. La RegisterActivatedServiceType méthode est utilisée sur le serveur pour autoriser l’activation à distance par les clients de types d’objets spécifiés.

Pour créer un objet activé par le client sur le serveur, vous devez connaître son Typeet il doit être inscrit sur le serveur à l’aide de la RegisterActivatedServiceType méthode . Pour obtenir un proxy pour un nouvel objet activé par le client, le client doit d’abord inscrire un canal avec ChannelServices , puis activer l’objet en appelant new ou Activator.CreateInstance.

Pour activer un type d’objet activé par le client avec le new mot clé, vous devez d’abord inscrire le type d’objet sur le client à l’aide de la RegisterActivatedClientType méthode . En appelant RegisterActivatedClientType , vous donnez à l’infrastructure de communication à distance l’emplacement de l’application distante où new tente de la créer. Si, en revanche, vous utilisez la CreateInstance méthode pour créer une nouvelle instance de l’objet activé par le client, vous devez fournir l’URL de l’application distante en tant que paramètre. Aucune inscription préalable sur le client n’est donc nécessaire. Pour fournir à la CreateInstance méthode l’URL du serveur sur lequel vous souhaitez créer l’objet, vous devez encapsuler l’URL dans une instance de la UrlAttribute classe .

Pour obtenir une description détaillée des objets activés par le client et de l’activation d’objets distants, consultez Activation d’objets distants.

Constructeurs

ActivatedServiceTypeEntry(String, String)

Initialise une nouvelle instance de la classe ActivatedServiceTypeEntry avec le nom de type et le nom d'assembly donnés.

ActivatedServiceTypeEntry(Type)

Initialise une nouvelle instance de la classe ActivatedServiceTypeEntry avec le Type donné.

Propriétés

AssemblyName

Obtient le nom d'assembly du type d'objets configuré pour être un type activé à distance.

(Hérité de TypeEntry)
ContextAttributes

Obtient ou définit les attributs de contexte pour le type de service activé par le client.

ObjectType

Obtient le Type du type de service activé par le client.

TypeName

Obtient le nom complet du type d'objets configuré pour être un type activé à distance.

(Hérité de TypeEntry)

Méthodes

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne les noms de types et d'assemblys du type de service activé par le client sous la forme de String.

S’applique à

Voir aussi