WellKnownServiceTypeEntry WellKnownServiceTypeEntry WellKnownServiceTypeEntry WellKnownServiceTypeEntry Class

定義

サーバー側でアクティブ化される型オブジェクト (単一の呼び出しまたはシングルトン) としてサービス エンドに登録されたオブジェクト型の値を保持します。Holds values for an object type registered on the service end as a server-activated type object (single call or singleton).

public ref class WellKnownServiceTypeEntry : System::Runtime::Remoting::TypeEntry
[System.Runtime.InteropServices.ComVisible(true)]
public class WellKnownServiceTypeEntry : System.Runtime.Remoting.TypeEntry
type WellKnownServiceTypeEntry = class
    inherit TypeEntry
Public Class WellKnownServiceTypeEntry
Inherits TypeEntry
継承
WellKnownServiceTypeEntryWellKnownServiceTypeEntryWellKnownServiceTypeEntryWellKnownServiceTypeEntry
属性

#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
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 'Main
End Class 'MyServer

注釈

サーバー側でアクティブ オブジェクトの種類は、1 回の呼び出しまたはシングルトンのいずれかにできます。Server-activated object types can be either single call or singleton. オブジェクトの種類が 1 回の呼び出しの場合は、新しいインスタンスが毎回では、クライアントからの呼び出しを作成します。If an object type is single call, a new instance of it is created each time a call from the client comes in. シングルトン オブジェクトに対するすべての呼び出しは、そのオブジェクトの 1 つのインスタンスによって処理されます。All calls to a singleton object are handled by one instance of that object.

このオブジェクトの URI を認識している任意のクライアントが優先的に使用するチャネルを登録することによってこのオブジェクトのプロキシを取得できますChannelServicesと呼び出すことによって、オブジェクトをアクティブ化newまたはActivator.GetObjectします。Any client that knows the URI of this object can obtain a proxy for this object by registering the channel it prefers with ChannelServices and activating the object by calling new or Activator.GetObject.

登録プロセスによって、リモート オブジェクト自体を作成しないことに注意してください。 重要です。It is important to note that the remote object itself is not created by the registration process. これのみ、クライアントが、オブジェクトのメソッドを呼び出すしようとしたときの動作またはクライアント側からオブジェクトをアクティブにします。This only happens when a client attempts to call a method on the object or activates the object from the client side.

サーバー側でアクティブ オブジェクトとリモート オブジェクトのアクティブ化の詳細については、次を参照してください。 Activation of Remote Objectsします。For a more detailed description of server-activated objects and remote object activation, see Activation of Remote Objects.

コンストラクター

WellKnownServiceTypeEntry(String, String, String, WellKnownObjectMode) WellKnownServiceTypeEntry(String, String, String, WellKnownObjectMode) WellKnownServiceTypeEntry(String, String, String, WellKnownObjectMode) WellKnownServiceTypeEntry(String, String, String, WellKnownObjectMode)

指定した型名、アセンブリ名、オブジェクト URI、および WellKnownServiceTypeEntry を使用して、WellKnownObjectMode クラスの新しいインスタンスを初期化します。Initializes a new instance of the WellKnownServiceTypeEntry class with the given type name, assembly name, object URI, and WellKnownObjectMode.

WellKnownServiceTypeEntry(Type, String, WellKnownObjectMode) WellKnownServiceTypeEntry(Type, String, WellKnownObjectMode) WellKnownServiceTypeEntry(Type, String, WellKnownObjectMode) WellKnownServiceTypeEntry(Type, String, WellKnownObjectMode)

指定した WellKnownServiceTypeEntry、オブジェクト URI、および Type を使用して、WellKnownObjectMode クラスの新しいインスタンスを初期化します。Initializes a new instance of the WellKnownServiceTypeEntry class with the given Type, object URI, and WellKnownObjectMode.

プロパティ

AssemblyName AssemblyName AssemblyName AssemblyName

リモート アクティブ型になるように構成されたオブジェクト型のアセンブリ名を取得します。Gets the assembly name of the object type configured to be a remote-activated type.

(Inherited from TypeEntry)
ContextAttributes ContextAttributes ContextAttributes ContextAttributes

サーバー側でアクティブ化されるサービス型のコンテキスト属性を取得または設定します。Gets or sets the context attributes for the server-activated service type.

Mode Mode Mode Mode

サーバー側でアクティブ化されるサービス型の WellKnownObjectMode を取得します。Gets the WellKnownObjectMode of the server-activated service type.

ObjectType ObjectType ObjectType ObjectType

サーバー側でアクティブ化されるサービス型の Type を取得します。Gets the Type of the server-activated service type.

ObjectUri ObjectUri ObjectUri ObjectUri

既知のサービス型の URI を取得します。Gets the URI of the well-known service type.

TypeName TypeName TypeName TypeName

リモート アクティブ型になるように構成されたオブジェクト型の完全な型名を取得します。Gets the full type name of the object type configured to be a remote-activated type.

(Inherited from TypeEntry)

メソッド

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

サーバー側でアクティブ化される型の型名、アセンブリ名、オブジェクト URI、および WellKnownObjectModeString として返します。Returns the type name, assembly name, object URI and the WellKnownObjectMode of the server-activated type as a String.

適用対象

こちらもご覧ください