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 auf der Dienstseite als Objekt eines vom Server aktivierten Typs (Einzelaufruf oder Singleton) registriert ist.
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
Vom Server aktivierte Objekttypen können entweder ein einzelner Aufruf oder Singleton sein. Wenn es sich bei einem Objekttyp um einen einzelnen Aufruf handelt, wird bei jedem Aufruf vom Client eine neue Instanz davon erstellt. Alle Aufrufe eines Singleton-Objekts werden von einer Instanz dieses Objekts verarbeitet.
Jeder Client, der den URI dieses Objekts kennt, kann einen Proxy für dieses Objekt abrufen, indem er den bevorzugten ChannelServices Kanal registriert und das Objekt durch Aufrufen von oder Activator.GetObjectaktiviertnew
.
Es ist wichtig zu beachten, dass das Remoteobjekt selbst nicht durch den Registrierungsprozess erstellt wird. Dies geschieht nur, wenn ein Client versucht, eine Methode für das Objekt aufzurufen oder das Objekt von der Clientseite aus aktiviert.
Eine ausführlichere Beschreibung der vom Server aktivierten Objekte und der Remoteobjektaktivierung finden Sie unter Aktivierung von Remoteobjekten.
Konstruktoren
WellKnownServiceTypeEntry(String, String, String, WellKnownObjectMode) |
Initialisiert eine neue Instanz der WellKnownServiceTypeEntry-Klasse unter Angabe des Typnamens, Assemblynamens, Objekt-URI und WellKnownObjectMode. |
WellKnownServiceTypeEntry(Type, String, WellKnownObjectMode) |
Initialisiert eine neue Instanz der WellKnownServiceTypeEntry-Klasse mit dem angegebenen Type, Objekt-URL und WellKnownObjectMode. |
Eigenschaften
AssemblyName |
Ruft den Assemblynamen des Objekttyps ab, der als remote aktivierter Typ konfiguriert ist. (Geerbt von TypeEntry) |
ContextAttributes |
Ruft die Kontextattribute für den vom Server aktivierten Diensttyp ab oder legt diese fest. |
Mode |
Ruft den WellKnownObjectMode des vom Server aktivierten Diensttyps ab. |
ObjectType |
Ruft den Type des vom Server aktivierten Diensttyps 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
Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
GetHashCode() |
Fungiert als Standardhashfunktion. (Geerbt von Object) |
GetType() |
Ruft den Type der aktuellen Instanz ab. (Geerbt von Object) |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
ToString() |
Gibt den Typnamen, Assemblynamen, Objekt-URI und WellKnownObjectMode des vom Server aktivierten Typs als String zurück. |