ProxyAttribute コンストラクタ
アセンブリ: mscorlib (mscorlib.dll 内)


<SecurityPermissionAttribute(SecurityAction.Demand, Flags := SecurityPermissionFlag.Infrastructure), _ AttributeUsage(AttributeTargets.Class)> _ Public Class MyProxyAttribute Inherits ProxyAttribute Public Sub New() End Sub 'New ' Create an instance of ServicedComponentProxy Public Overrides Function CreateInstance(serverType As Type) As MarshalByRefObject Return MyBase.CreateInstance(serverType) End Function 'CreateInstance 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 End Class 'MyProxyAttribute <MyProxyAttribute()> _ Public Class CustomServer Inherits ContextBoundObject Public Sub New() Console.WriteLine("CustomServer Base Class constructor called") End Sub 'New Public Sub HelloMethod(str As String) Console.WriteLine("HelloMethod of Server is invoked with message : " + str) End Sub 'HelloMethod End Class 'CustomServer
[AttributeUsage(AttributeTargets.Class)] [SecurityPermissionAttribute(SecurityAction.Demand, Flags=SecurityPermissionFlag.Infrastructure)] public class MyProxyAttribute : ProxyAttribute { public MyProxyAttribute() { } // Create an instance of ServicedComponentProxy public override MarshalByRefObject CreateInstance(Type serverType) { return base.CreateInstance(serverType); } 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; } } [PermissionSet(SecurityAction.Demand, Name="FullTrust")] [MyProxyAttribute] public class CustomServer :ContextBoundObject { public CustomServer() { Console.WriteLine("CustomServer Base Class constructor called"); } public void HelloMethod(string str) { Console.WriteLine("HelloMethod of Server is invoked with message : " + str); } }
[AttributeUsageAttribute(AttributeTargets::Class)] [System::Security::Permissions::SecurityPermissionAttribute (System::Security::Permissions::SecurityAction::LinkDemand, Flags=System::Security::Permissions::SecurityPermissionFlag::Infrastructure)] [System::Security::Permissions::SecurityPermissionAttribute (System::Security::Permissions::SecurityAction::InheritanceDemand, Flags=System::Security::Permissions::SecurityPermissionFlag::Infrastructure)] public ref class MyProxyAttribute: public ProxyAttribute { public: MyProxyAttribute(){} // Create an instance of ServicedComponentProxy virtual MarshalByRefObject^ CreateInstance( Type^ serverType ) override { return ProxyAttribute::CreateInstance( serverType ); } 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; } }; [MyProxyAttribute] ref class CustomServer: public ContextBoundObject { public: CustomServer() { Console::WriteLine( "CustomServer Base Class constructor called" ); } void HelloMethod( String^ str ) { Console::WriteLine( "HelloMethod of Server is invoked with message : {0}", str ); } };

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 によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からProxyAttribute コンストラクタを検索する場合は、下記のリンクをクリックしてください。

- ProxyAttribute コンストラクタのページへのリンク