Freigeben über


RealProxy.SetStubData-Methode

Legt die Stubdaten für den angegebenen Proxy fest.

Namespace: System.Runtime.Remoting.Proxies
Assembly: mscorlib (in mscorlib.dll)

Syntax

'Declaration
Public Shared Sub SetStubData ( _
    rp As RealProxy, _
    stubData As Object _
)
'Usage
Dim rp As RealProxy
Dim stubData As Object

RealProxy.SetStubData(rp, stubData)
public static void SetStubData (
    RealProxy rp,
    Object stubData
)
public:
static void SetStubData (
    RealProxy^ rp, 
    Object^ stubData
)
public static void SetStubData (
    RealProxy rp, 
    Object stubData
)
public static function SetStubData (
    rp : RealProxy, 
    stubData : Object
)

Parameter

  • rp
    Der Proxy, für den Stubdaten festgelegt werden sollen.
  • stubData
    Die neuen Stubdaten.

Ausnahmen

Ausnahmetyp Bedingung

SecurityException

Der direkte Aufrufer verfügt nicht über die UnmanagedCode-Berechtigung.

Hinweise

Benutzerdefinierte Proxys legen anhand der Stubdaten fest, wie eingehende Methodenaufrufe behandelt werden. Die Stubdaten können z. B. Informationen zum Kontext des Servers enthalten, anhand derer entschieden wird, ob der Aufruf lokal ausgeführt oder über die Remoteinfrastruktur gesendet werden soll.

Beispiel

Public Overrides Function CreateProxy(objRef1 As ObjRef, serverType As Type, _
            serverObject As Object, serverContext As Context) As RealProxy
   Dim myCustomProxy As New MyProxy(serverType)
   If Not (serverContext Is Nothing) Then
      RealProxy.SetStubData(myCustomProxy, serverContext)
   End If
   If Not serverType.IsMarshalByRef And serverContext Is Nothing Then
      Throw New RemotingException("Bad Type for CreateProxy")
   End If
   Return myCustomProxy
End Function 'CreateProxy
public override RealProxy CreateProxy(ObjRef objRef1,
   Type serverType,
   object serverObject,
   Context serverContext)
{
   MyProxy myCustomProxy = new MyProxy(serverType);
   if(serverContext != null)
   {
      RealProxy.SetStubData(myCustomProxy,serverContext);
   }
   if((!serverType.IsMarshalByRef)&&(serverContext == null))
   {
      throw new RemotingException("Bad Type for CreateProxy");
   }
   return myCustomProxy;
}
virtual RealProxy^ CreateProxy( ObjRef^ objRef1, Type^ serverType, Object^ serverObject, Context^ serverContext ) override
{
   MyProxy^ myCustomProxy = gcnew MyProxy( serverType );
   if ( serverContext != nullptr )
   {
      RealProxy::SetStubData( myCustomProxy, serverContext );
   }

   if ( ( !serverType->IsMarshalByRef) && (serverContext == nullptr) )
   {
      throw gcnew RemotingException( "Bad Type for CreateProxy" );
   }

   return myCustomProxy;
}

.NET Framework-Sicherheit

Plattformen

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 unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

RealProxy-Klasse
RealProxy-Member
System.Runtime.Remoting.Proxies-Namespace