Aracılığıyla paylaş


RemotingServices.IsTransparentProxy(Object) Yöntem

Tanım

Verilen nesnenin saydam bir proxy mi yoksa gerçek bir nesne mi olduğunu gösteren bir Boole değeri döndürür.

public:
 static bool IsTransparentProxy(System::Object ^ proxy);
public static bool IsTransparentProxy (object proxy);
static member IsTransparentProxy : obj -> bool
Public Shared Function IsTransparentProxy (proxy As Object) As Boolean

Parametreler

proxy
Object

Denetlenecek nesneye başvuru.

Döndürülenler

Parametrede proxy belirtilen nesnenin saydam bir proxy mi yoksa gerçek bir nesne mi olduğunu gösteren boole değeri.

Örnekler

Aşağıdaki kod örneği, bir nesnenin IsTransparentProxy ara sunucu mu yoksa gerçek nesne mi olduğunu belirlemek için yönteminin kullanımını gösterir. Örnek kodun tamamı için sınıfın örneğine AsyncResult bakın.

// Creates an instance of a context-bound type SampleSynchronized.
SampleSynchronized^ sampSyncObj = gcnew SampleSynchronized;

// Checks whether the Object* is a proxy, since it is context-bound.
if ( RemotingServices::IsTransparentProxy( sampSyncObj ) )
   Console::WriteLine( "sampSyncObj is a proxy." );
else
   Console::WriteLine( "sampSyncObj is NOT a proxy." );
// Creates an instance of a context-bound type SampleSynchronized.
SampleSynchronized sampSyncObj = new SampleSynchronized();

// Checks whether the object is a proxy, since it is context-bound.
if (RemotingServices.IsTransparentProxy(sampSyncObj))
    Console.WriteLine("sampSyncObj is a proxy.");
else
    Console.WriteLine("sampSyncObj is NOT a proxy.");
' Creates an instance of a context-bound type SampleSynchronized.
Dim sampSyncObj As New SampleSynchronized()

' Checks whether the object is a proxy, since it is context-bound.
If RemotingServices.IsTransparentProxy(sampSyncObj) Then
   Console.WriteLine("sampSyncObj is a proxy.")
Else
   Console.WriteLine("sampSyncObj is NOT a proxy.")
End If

Açıklamalar

Herhangi bir uzaktan iletişim sınırında nesne kullanan bir istemci aslında nesne için saydam bir ara sunucu kullanır. Saydam proxy, gerçek nesnenin istemcinin alanında yer aldığını gösterir. Uzaktan iletişim altyapısını kullanarak üzerinde yapılan çağrıları gerçek nesneye ileterek bunu elde eder.

Saydam ara sunucu, türündeki RealProxyyönetilen çalışma zamanı sınıfının bir örneği tarafından barındırılır. saydam RealProxy proxy'den işlemleri iletmek için gereken işlevselliğin bir bölümünü uygular. Proxy nesnesi, atık toplama, üyeler ve yöntemler için destek gibi yönetilen nesnelerin ilişkili semantiğini devralır ve yeni sınıflar oluşturmak için genişletilebilir. Bu nedenle ara sunucu çift doğaya sahiptir; bir yandan uzak nesne (saydam ara sunucu) ile aynı sınıfın nesnesi olarak davranması gerekirken, diğer yandan yönetilen nesnenin kendisidir.

Ara sunucu nesnesi, içindeki AppDomainuzaktan iletişim alt bölümlere bakılmaksızın kullanılabilir. Uygulamaların ara sunucu başvuruları ile nesne başvuruları arasında ayrım yapmanız gerekmez. Ancak etkinleştirme, yaşam süresi yönetimi ve işlemler gibi sorunlarla ilgilenen hizmet sağlayıcılarının bu tür ayrımlar yapması gerekir.

Şunlara uygulanır

Ayrıca bkz.