ActivatedServiceTypeEntry Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Contiene i valori per un tipo di oggetto registrato sul lato servizio come uno che può essere attivato su richiesta da 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
- Ereditarietà
- Attributi
Esempio
#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
Commenti
La classe corrente viene utilizzata dal RemotingConfiguration.RegisterActivatedServiceType metodo , che è la controparte lato server del RemotingConfiguration.RegisterActivatedClientType metodo . Il RegisterActivatedServiceType metodo viene utilizzato nel server per consentire l'attivazione remota da parte dei client di tipi di oggetto specificati.
Per creare un oggetto attivato dal client nel server, è necessario conoscerne Typee deve essere registrato sul lato server usando il RegisterActivatedServiceType metodo . Per ottenere un proxy per un nuovo oggetto attivato dal client, il client deve prima registrare un canale con ChannelServices e quindi attivare l'oggetto chiamando new o Activator.CreateInstance.
Per attivare un tipo di oggetto attivato dal client con la new parola chiave , è prima necessario registrare il tipo di oggetto nel client usando il RegisterActivatedClientType metodo .
RegisterActivatedClientType Chiamando si assegna all'infrastruttura remota la posizione dell'applicazione remota in cui new tenta di crearla. Se invece si usa il CreateInstance metodo per creare una nuova istanza dell'oggetto attivato dal client, è necessario specificare l'URL dell'applicazione remota come parametro, quindi non è necessaria alcuna registrazione precedente nel client. Per fornire al CreateInstance metodo l'URL del server in cui si desidera creare l'oggetto, è necessario incapsulare l'URL in un'istanza della UrlAttribute classe .
Costruttori
| Nome | Descrizione |
|---|---|
| ActivatedServiceTypeEntry(String, String) |
Inizializza una nuova istanza della ActivatedServiceTypeEntry classe con il nome del tipo e il nome dell'assembly specificati. |
| ActivatedServiceTypeEntry(Type) |
Inizializza una nuova istanza della ActivatedServiceTypeEntry classe con l'oggetto specificato Type. |
Proprietà
| Nome | Descrizione |
|---|---|
| AssemblyName |
Ottiene il nome dell'assembly del tipo di oggetto configurato per essere un tipo attivato da remoto. (Ereditato da TypeEntry) |
| ContextAttributes |
Ottiene o imposta gli attributi di contesto per il tipo di servizio attivato dal client. |
| ObjectType |
Ottiene l'oggetto Type del tipo di servizio attivato dal client. |
| TypeName |
Ottiene il nome completo del tipo di oggetto configurato per essere un tipo attivato da remoto. (Ereditato da TypeEntry) |
Metodi
| Nome | Descrizione |
|---|---|
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| ToString() |
Restituisce il tipo e il nome dell'assembly del tipo di servizio attivato dal client come .String |