ITrackingHandler.MarshaledObject(Object, ObjRef) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
마샬링된 개체의 현재 인스턴스를 알려 줍니다.
public:
void MarshaledObject(System::Object ^ obj, System::Runtime::Remoting::ObjRef ^ or);
public void MarshaledObject (object obj, System.Runtime.Remoting.ObjRef or);
[System.Security.SecurityCritical]
public void MarshaledObject (object obj, System.Runtime.Remoting.ObjRef or);
abstract member MarshaledObject : obj * System.Runtime.Remoting.ObjRef -> unit
[<System.Security.SecurityCritical>]
abstract member MarshaledObject : obj * System.Runtime.Remoting.ObjRef -> unit
Public Sub MarshaledObject (obj As Object, or As ObjRef)
매개 변수
- obj
- Object
마샬링된 개체입니다.
- 특성
예제
다음 코드 예제에서는이 메서드를 구현 하는 방법을 보여 줍니다. 이 코드 예제는 제공 된 큰 예제의 일부는 ITrackingHandler 인터페이스입니다.
// Called when the tracked object is marshaled.
public void MarshaledObject(Object obj, ObjRef objRef)
{
// Notify the user of the marshal event.
Console.WriteLine("Tracking: An instance of {0} was marshaled.",
obj.ToString());
// Print the channel information.
if (objRef.ChannelInfo != null)
{
// Iterate over ChannelData.
foreach(object data in objRef.ChannelInfo.ChannelData)
{
if (data is ChannelDataStore)
{
// Print the URIs from the ChannelDataStore objects.
string[] uris = ((ChannelDataStore)data).ChannelUris;
foreach(string uri in uris)
Console.WriteLine("ChannelUri: " + uri);
}
}
}
// Print the envoy information.
if (objRef.EnvoyInfo != null)
Console.WriteLine("EnvoyInfo: " + objRef.EnvoyInfo.ToString());
// Print the type information.
if (objRef.TypeInfo != null)
{
Console.WriteLine("TypeInfo: " + objRef.TypeInfo.ToString());
Console.WriteLine("TypeName: " + objRef.TypeInfo.TypeName);
}
// Print the URI.
if (objRef.URI != null)
Console.WriteLine("URI: " + objRef.URI.ToString());
}
적용 대상
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET