WellKnownServiceTypeEntry クラス
アセンブリ: mscorlib (mscorlib.dll 内)
構文
解説サーバー側でアクティブ化されるオブジェクト型には、単一の呼び出しまたはシングルトンがあります。オブジェクト型が単一の呼び出しの場合は、クライアントからの呼び出しがあるたびに新しいインスタンスが作成されます。シングルトン オブジェクトへのすべての呼び出しは、そのオブジェクトの 1 つのインスタンスによって処理されます。
このオブジェクトの URI を知っているすべてのクライアントは、ChannelServices で優先するチャネルを登録し、new または Activator.GetObject を呼び出してそのオブジェクトをアクティブにすることにより、このオブジェクト用にプロキシを取得できます。
登録処理によって、リモート オブジェクト自体は作成されないことに注意してください。これはクライアントがオブジェクト上のメソッドを呼び出そうとしたり、クライアント側からオブジェクトをアクティブにしたりする場合にだけ発生します。
サーバー側でアクティブ化されるオブジェクトとリモート オブジェクト アクティベーションの詳細については、「リモート オブジェクトのアクティべーション」を参照してください。
使用例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
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(); } }
#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(); }
import System.*; import System.Runtime.Remoting.*; import System.Runtime.Remoting.Channels.*; import System.Runtime.Remoting.Channels.Http.*; public class MyServer { public static void main(String[] args) { // 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(HelloServer.class.ToType() , "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].get_Mode()); Console.WriteLine("The 'WellKnownServiceTypeEntry' object: " + myWellKnownServiceTypeEntryCollection.get_Item(0).ToString()); Console.WriteLine("Started the Server, Hit <enter> to exit..."); Console.ReadLine(); } //main } //MyServer
継承階層System.Runtime.Remoting.TypeEntry
System.Runtime.Remoting.WellKnownServiceTypeEntry
スレッド セーフ
プラットフォームWindows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
バージョン情報
参照WellKnownServiceTypeEntry コンストラクタ (Type, String, WellKnownObjectMode)
アセンブリ: mscorlib (mscorlib.dll 内)
構文Dim type As Type Dim objectUri As String Dim mode As WellKnownObjectMode Dim instance As New WellKnownServiceTypeEntry(type, objectUri, mode)
public function WellKnownServiceTypeEntry ( type : Type, objectUri : String, mode : WellKnownObjectMode )
プラットフォームWindows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
バージョン情報
参照WellKnownServiceTypeEntry コンストラクタ
オーバーロードの一覧| 名前 | 説明 |
|---|---|
| WellKnownServiceTypeEntry (Type, String, WellKnownObjectMode) | 指定した Type、オブジェクト URI、および WellKnownObjectMode を使用して、WellKnownServiceTypeEntry クラスの新しいインスタンスを初期化します。 |
| WellKnownServiceTypeEntry (String, String, String, WellKnownObjectMode) | 指定した型名、アセンブリ名、オブジェクト URI、および WellKnownObjectMode を使用して、WellKnownServiceTypeEntry クラスの新しいインスタンスを初期化します。 |
参照WellKnownServiceTypeEntry コンストラクタ (String, String, String, WellKnownObjectMode)
アセンブリ: mscorlib (mscorlib.dll 内)
構文Public Sub New ( _ typeName As String, _ assemblyName As String, _ objectUri As String, _ mode As WellKnownObjectMode _ )
Dim typeName As String Dim assemblyName As String Dim objectUri As String Dim mode As WellKnownObjectMode Dim instance As New WellKnownServiceTypeEntry(typeName, assemblyName, objectUri, mode)
public WellKnownServiceTypeEntry ( string typeName, string assemblyName, string objectUri, WellKnownObjectMode mode )
public: WellKnownServiceTypeEntry ( String^ typeName, String^ assemblyName, String^ objectUri, WellKnownObjectMode mode )
public WellKnownServiceTypeEntry ( String typeName, String assemblyName, String objectUri, WellKnownObjectMode mode )
public function WellKnownServiceTypeEntry ( typeName : String, assemblyName : String, objectUri : String, mode : WellKnownObjectMode )
プラットフォームWindows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
バージョン情報
参照WellKnownServiceTypeEntry プロパティ
パブリック プロパティ| 名前 | 説明 | |
|---|---|---|
| AssemblyName | リモート アクティブ型になるように構成されたオブジェクト型のアセンブリ名を取得します。 ( TypeEntry から継承されます。) |
| ContextAttributes | サーバー側でアクティブ化されるサービス型のコンテキスト属性を取得または設定します。 |
| Mode | サーバー側でアクティブ化されるサービス型の WellKnownObjectMode を取得します。 |
| ObjectType | サーバー側でアクティブ化されるサービス型の Type を取得します。 |
| ObjectUri | 既知のサービス型の URI を取得します。 |
| TypeName | リモート アクティブ型になるように構成されたオブジェクト型の完全な型名を取得します。 ( TypeEntry から継承されます。) |
参照WellKnownServiceTypeEntry メソッド
パブリック メソッド| 名前 | 説明 | |
|---|---|---|
| Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。) |
| GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。) |
| GetType | 現在のインスタンスの Type を取得します。 ( Object から継承されます。) |
| ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。) |
| ToString | オーバーライドされます。 サーバー側でアクティブ化される型の型名、アセンブリ名、オブジェクト URI、および WellKnownObjectMode を String として返します。 |
プロテクト メソッド| 名前 | 説明 | |
|---|---|---|
| Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 ( Object から継承されます。) |
| MemberwiseClone | 現在の Object の簡易コピーを作成します。 ( Object から継承されます。) |
参照WellKnownServiceTypeEntry メンバ
サーバー側でアクティブ化される型オブジェクト (単一の呼び出しまたはシングルトン) としてサービス エンドに登録されたオブジェクト型の値を保持します。
WellKnownServiceTypeEntry データ型で公開されるメンバを以下の表に示します。
パブリック コンストラクタ
パブリック プロパティ| 名前 | 説明 | |
|---|---|---|
| AssemblyName | リモート アクティブ型になるように構成されたオブジェクト型のアセンブリ名を取得します。(TypeEntry から継承されます。) |
| ContextAttributes | サーバー側でアクティブ化されるサービス型のコンテキスト属性を取得または設定します。 |
| Mode | サーバー側でアクティブ化されるサービス型の WellKnownObjectMode を取得します。 |
| ObjectType | サーバー側でアクティブ化されるサービス型の Type を取得します。 |
| ObjectUri | 既知のサービス型の URI を取得します。 |
| TypeName | リモート アクティブ型になるように構成されたオブジェクト型の完全な型名を取得します。(TypeEntry から継承されます。) |
パブリック メソッド| 名前 | 説明 | |
|---|---|---|
| Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。) |
| GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。) |
| GetType | 現在のインスタンスの Type を取得します。 (Object から継承されます。) |
| ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。) |
| ToString | オーバーライドされます。 サーバー側でアクティブ化される型の型名、アセンブリ名、オブジェクト URI、および WellKnownObjectMode を String として返します。 |
プロテクト メソッド| 名前 | 説明 | |
|---|---|---|
| Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。) |
| MemberwiseClone | 現在の Object の簡易コピーを作成します。 (Object から継承されます。) |
参照- WellKnownServiceTypeEntryのページへのリンク