RemotingServices.Unmarshal メソッド
特定の ObjRef をプロキシ オブジェクトに変換します。
オーバーロードの一覧
ObjRef を取り、これからプロキシ オブジェクトを作成します。
[Visual Basic] Overloads Public Shared Function Unmarshal(ObjRef) As Object
[JScript] public static function Unmarshal(ObjRef) : Object;
ObjRef を取り、これからプロキシ オブジェクトを作成し、サーバーにある型に対してこのプロキシ オブジェクトを詳細に指定します。
[Visual Basic] Overloads Public Shared Function Unmarshal(ObjRef, Boolean) As Object
[JScript] public static function Unmarshal(ObjRef, Boolean) : Object;
使用例
[Visual Basic, C#, C++] オブジェクトのマーシャリングを解除する方法の例を次に示します。
[Visual Basic, C#, C++] メモ ここでは、Unmarshal のオーバーロード形式のうちの 1 つだけについて、使用例を示します。その他の例については、各オーバーロード形式のトピックを参照してください。
ChannelServices.RegisterChannel(New HttpChannel())
Dim objectSample As SampleService = CType(Activator.GetObject(GetType(SampleService), _
"https://localhost:9000/MySampleService/SampleService.soap"), SampleService)
' The GetManuallyMarshaledObject() method uses RemotingServices.Marshal()
' to create an ObjRef object for a SampleTwo object.
Dim objRefSampleTwo As ObjRef = objectSample.GetManuallyMarshaledObject()
Dim objectSampleTwo As SampleTwo = CType(RemotingServices.Unmarshal(objRefSampleTwo), SampleTwo)
objectSampleTwo.PrintMessage("I successfully unmarshaled your ObjRef. Thanks.")
[C#]
ChannelServices.RegisterChannel(new HttpChannel());
SampleService objectSample = (SampleService)Activator.GetObject(typeof(SampleService),
"https://localhost:9000/MySampleService/SampleService.soap");
// The GetManuallyMarshaledObject() method uses RemotingServices.Marshal()
// to create an ObjRef object for a SampleTwo object.
ObjRef objRefSampleTwo = objectSample.GetManuallyMarshaledObject();
SampleTwo objectSampleTwo = (SampleTwo)RemotingServices.Unmarshal(objRefSampleTwo);
objectSampleTwo.PrintMessage("ObjRef successfuly unmarshaled.");
[C++]
ChannelServices::RegisterChannel(new HttpChannel());
SampleService* objectSample = dynamic_cast<SampleService*>(Activator::GetObject(__typeof(SampleService),
S"https://localhost:9000/MySampleService/SampleService.soap"));
Console::WriteLine(S"https://localhost:9000/MySampleService/SampleService.soap");
// The GetManuallyMarshaledObject() method uses RemotingServices::Marshal()
// to create an ObjRef object for a SampleTwo object.
ObjRef* objRefSampleTwo = objectSample->GetManuallyMarshaledObject();
SampleTwo* objectSampleTwo = dynamic_cast<SampleTwo*>(RemotingServices::Unmarshal(objRefSampleTwo));
objectSampleTwo->PrintMessage(S"ObjRef successfuly unmarshaled.");
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
参照
RemotingServices クラス | RemotingServices メンバ | System.Runtime.Remoting 名前空間