WellKnownServiceTypeEntry Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Hizmet ucunda sunucu tarafından etkinleştirilmiş tür nesnesi (tek çağrı veya tekil) olarak kaydedilmiş bir nesne türünün değerlerini tutar.
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
- Devralma
- Öznitelikler
Örnekler
#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
Açıklamalar
Sunucu tarafından etkinleştirilen nesne türleri tek çağrı veya tekil olabilir. Nesne türü tek bir çağrıysa, istemciden her çağrı geldiğinde yeni bir örneği oluşturulur. Tekil bir nesneye yapılan tüm çağrılar bu nesnenin bir örneği tarafından işlenir.
Bu nesnenin URI'sini bilen herhangi bir istemci, tercih ChannelServices ettiği kanalı kaydederek ve veya Activator.GetObjectçağırarak new
nesneyi etkinleştirerek bu nesne için bir proxy alabilir.
Uzak nesnenin kayıt işlemi tarafından oluşturulmadığını unutmayın. Bu yalnızca istemci nesnede bir yöntemi çağırmaya çalıştığında veya nesneyi istemci tarafından etkinleştirdiğinde gerçekleşir.
Sunucu tarafından etkinleştirilen nesnelerin ve uzak nesne etkinleştirmenin daha ayrıntılı bir açıklaması için bkz. Uzak Nesnelerin Etkinleştirilmesi.
Oluşturucular
WellKnownServiceTypeEntry(String, String, String, WellKnownObjectMode) |
Verilen tür adı, derleme adı, nesne URI'si ve WellKnownObjectModeile sınıfının yeni bir örneğini WellKnownServiceTypeEntry başlatır. |
WellKnownServiceTypeEntry(Type, String, WellKnownObjectMode) |
Verilen Type, nesne URI'sini WellKnownServiceTypeEntry ve WellKnownObjectModeile sınıfının yeni bir örneğini başlatır. |
Özellikler
AssemblyName |
Uzaktan etkinleştirilen bir tür olarak yapılandırılan nesne türünün derleme adını alır. (Devralındığı yer: TypeEntry) |
ContextAttributes |
Sunucu tarafından etkinleştirilen hizmet türü için bağlam özniteliklerini alır veya ayarlar. |
Mode |
WellKnownObjectMode Sunucu tarafından etkinleştirilen hizmet türünün türünü alır. |
ObjectType |
Type Sunucu tarafından etkinleştirilen hizmet türünün türünü alır. |
ObjectUri |
İyi bilinen hizmet türünün URI'sini alır. |
TypeName |
Uzaktan etkinleştirilen bir tür olarak yapılandırılan nesne türünün tam tür adını alır. (Devralındığı yer: TypeEntry) |
Yöntemler
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
ToString() |
Tür adını, derleme adını, nesne URI'sini WellKnownObjectMode ve sunucu tarafından etkinleştirilen türün türünü olarak Stringdöndürür. |