WellKnownServiceTypeEntry Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Enthält Werte für einen Objekttyp, der am Dienstende als serveraktives Typobjekt registriert ist (einzelner Aufruf oder Singleton).
public ref class WellKnownServiceTypeEntry : System::Runtime::Remoting::TypeEntry
public class WellKnownServiceTypeEntry : System.Runtime.Remoting.TypeEntry
[System.Runtime.InteropServices.ComVisible(true)]
public class WellKnownServiceTypeEntry : System.Runtime.Remoting.TypeEntry
type WellKnownServiceTypeEntry = class
inherit TypeEntry
[<System.Runtime.InteropServices.ComVisible(true)>]
type WellKnownServiceTypeEntry = class
inherit TypeEntry
Public Class WellKnownServiceTypeEntry
Inherits TypeEntry
- Vererbung
- Attribute
Beispiele
#using <System.Runtime.Remoting.dll>
#using <System.dll>
#using <WellKnownServiceTypeEntry_Share.dll>
using namespace System;
using namespace System::Runtime::Remoting;
using namespace System::Runtime::Remoting::Channels;
using namespace System::Runtime::Remoting::Channels::Http;
int main()
{
// Create a 'HttpChannel' object and register it with the
// channel services.
ChannelServices::RegisterChannel( gcnew HttpChannel( 8086 ) );
// Record the 'HelloServer' type as 'Singleton' well-known type.
WellKnownServiceTypeEntry^ myWellKnownServiceTypeEntry = gcnew WellKnownServiceTypeEntry( HelloServer::typeid,"SayHello",WellKnownObjectMode::Singleton );
// Register the remote object as well-known type.
RemotingConfiguration::RegisterWellKnownServiceType( myWellKnownServiceTypeEntry );
// Retrieve object types registered on the service end
// as well-known types.
array<WellKnownServiceTypeEntry^>^myWellKnownServiceTypeEntryCollection = RemotingConfiguration::GetRegisteredWellKnownServiceTypes();
Console::WriteLine( "The 'WellKnownObjectMode' of the remote object : {0}", myWellKnownServiceTypeEntryCollection[ 0 ]->Mode );
Console::WriteLine( "The 'WellKnownServiceTypeEntry' object: {0}", myWellKnownServiceTypeEntryCollection[ 0 ] );
Console::WriteLine( "Started the Server, Hit <enter> to exit..." );
Console::ReadLine();
}
using System;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Channels.Http;
public class MyServer
{
public static void Main()
{
// Create a 'HttpChannel' object and register it with the
// channel services.
ChannelServices.RegisterChannel(new HttpChannel(8086));
// Record the 'HelloServer' type as 'Singleton' well-known type.
WellKnownServiceTypeEntry myWellKnownServiceTypeEntry=
new WellKnownServiceTypeEntry(typeof(HelloServer),
"SayHello",
WellKnownObjectMode.Singleton);
// Register the remote object as well-known type.
RemotingConfiguration.RegisterWellKnownServiceType(
myWellKnownServiceTypeEntry);
// Retrieve object types registered on the service end
// as well-known types.
WellKnownServiceTypeEntry [] myWellKnownServiceTypeEntryCollection =
RemotingConfiguration.GetRegisteredWellKnownServiceTypes();
Console.WriteLine("The 'WellKnownObjectMode' of the remote object : "
+myWellKnownServiceTypeEntryCollection[0].Mode);
Console.WriteLine("The 'WellKnownServiceTypeEntry' object: "+
myWellKnownServiceTypeEntryCollection[0].ToString());
Console.WriteLine("Started the Server, Hit <enter> to exit...");
Console.ReadLine();
}
}
Imports System.Runtime.Remoting
Imports System.Runtime.Remoting.Channels
Imports System.Runtime.Remoting.Channels.Http
Public Class MyServer
Public Shared Sub Main()
' Create a 'HttpChannel' object and register it with the
' channel services.
ChannelServices.RegisterChannel(New HttpChannel(8086))
' Record the 'HelloServer' type as 'Singleton' well-known type.
Dim myWellKnownServiceTypeEntry As New WellKnownServiceTypeEntry(GetType(HelloServer), _
"SayHello", WellKnownObjectMode.Singleton)
' Register the remote object as well-known type.
RemotingConfiguration.RegisterWellKnownServiceType(myWellKnownServiceTypeEntry)
' Retrieve object types registered on the service end
' as well-known types.
Dim myWellKnownServiceTypeEntryCollection As WellKnownServiceTypeEntry() = _
RemotingConfiguration.GetRegisteredWellKnownServiceTypes()
Console.WriteLine("The 'WellKnownObjectMode' of the remote object : " + _
myWellKnownServiceTypeEntryCollection(0).Mode.ToString())
Console.WriteLine("The 'WellKnownServiceTypeEntry' object: " + _
myWellKnownServiceTypeEntryCollection(0).ToString())
Console.WriteLine("Started the Server, Hit <enter> to exit...")
Console.ReadLine()
End Sub
End Class
Hinweise
Serveraktive Objekttypen können entweder einzelner Aufruf oder Singleton sein. Wenn ein Objekttyp ein einzelner Aufruf ist, wird jedes Mal eine neue Instanz davon erstellt, wenn ein Aufruf vom Client eingeht. Alle Aufrufe eines Singleton-Objekts werden von einer Instanz dieses Objekts behandelt.
Jeder Client, der den URI dieses Objekts kennt, kann einen Proxy für dieses Objekt abrufen, indem er den gewünschten ChannelServices Kanal registriert und das Objekt durch Aufrufen new oder Activator.GetObjectAktivieren des Objekts aktiviert.
Es ist wichtig zu beachten, dass das Remoteobjekt selbst nicht vom Registrierungsprozess erstellt wird. Dies geschieht nur, wenn ein Client versucht, eine Methode für das Objekt aufzurufen oder das Objekt von der Clientseite aus zu aktivieren.
Konstruktoren
| Name | Beschreibung |
|---|---|
| WellKnownServiceTypeEntry(String, String, String, WellKnownObjectMode) |
Initialisiert eine neue Instanz der WellKnownServiceTypeEntry Klasse mit dem angegebenen Typnamen, Assemblynamen, Objekt-URI und WellKnownObjectMode. |
| WellKnownServiceTypeEntry(Type, String, WellKnownObjectMode) |
Initialisiert eine neue Instanz der WellKnownServiceTypeEntry Klasse mit dem angegebenen TypeObjekt-URI und WellKnownObjectMode. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| AssemblyName |
Ruft den Assemblynamen des Objekttyps ab, der als Remoteaktivierungstyp konfiguriert ist. (Geerbt von TypeEntry) |
| ContextAttributes |
Ruft die Kontextattribute für den serveraktiven Diensttyp ab oder legt diese fest. |
| Mode |
Ruft den WellKnownObjectMode serveraktiven Diensttyp ab. |
| ObjectType |
Ruft den Type serveraktiven Diensttyp ab. |
| ObjectUri |
Ruft den URI des bekannten Diensttyps ab. |
| TypeName |
Ruft den vollständigen Typnamen des Objekttyps ab, der als remote aktivierter Typ konfiguriert ist. (Geerbt von TypeEntry) |
Methoden
| Name | Beschreibung |
|---|---|
| Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
| GetHashCode() |
Dient als die Standard-Hashfunktion (Geerbt von Object) |
| GetType() |
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
| MemberwiseClone() |
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
| ToString() |
Gibt den Typnamen, den Assemblynamen, den Objekt-URI und den WellKnownObjectMode serveraktiven Typ als URI zurück String. |