TypeBuilder.AddInterfaceImplementation メソッド
アセンブリ: mscorlib (mscorlib.dll 内)

<ComVisibleAttribute(True)> _ Public Sub AddInterfaceImplementation ( _ interfaceType As Type _ )
Dim instance As TypeBuilder Dim interfaceType As Type instance.AddInterfaceImplementation(interfaceType)
/** @attribute ComVisibleAttribute(true) */ public void AddInterfaceImplementation ( Type interfaceType )
ComVisibleAttribute(true) public function AddInterfaceImplementation ( interfaceType : Type )

例外の種類 | 条件 |
---|---|
ArgumentNullException | interfaceType が null 参照 (Visual Basic では Nothing) です。 |
InvalidOperationException |

次のコード例は、AddInterfaceImplementation を使用して、動的に作成した型でインターフェイスを実装する方法を示しています。
' Mark the class as implementing 'IHello' interface. helloWorldTypeBuilder.AddInterfaceImplementation(GetType(IHello)) Dim myMethodBuilder As MethodBuilder = helloWorldTypeBuilder.DefineMethod("SayHello", _ MethodAttributes.Public Or MethodAttributes.Virtual, Nothing, Nothing) ' Generate IL for 'SayHello' method. Dim myMethodIL As ILGenerator = myMethodBuilder.GetILGenerator() myMethodIL.EmitWriteLine(myGreetingField) myMethodIL.Emit(OpCodes.Ret) Dim sayHelloMethod As MethodInfo = GetType(IHello).GetMethod("SayHello") helloWorldTypeBuilder.DefineMethodOverride(myMethodBuilder, sayHelloMethod)
// Mark the class as implementing 'IHello' interface. helloWorldTypeBuilder.AddInterfaceImplementation(typeof(IHello)); MethodBuilder myMethodBuilder = helloWorldTypeBuilder.DefineMethod("SayHello", MethodAttributes.Public|MethodAttributes.Virtual, null, null); // Generate IL for 'SayHello' method. ILGenerator myMethodIL = myMethodBuilder.GetILGenerator(); myMethodIL.EmitWriteLine(myGreetingField); myMethodIL.Emit(OpCodes.Ret); MethodInfo sayHelloMethod = typeof(IHello).GetMethod("SayHello"); helloWorldTypeBuilder.DefineMethodOverride(myMethodBuilder,sayHelloMethod);
// Mark the class as implementing 'IHello' interface. helloWorldTypeBuilder->AddInterfaceImplementation( IHello::typeid ); MethodBuilder^ myMethodBuilder = helloWorldTypeBuilder->DefineMethod( "SayHello", (MethodAttributes)(MethodAttributes::Public | MethodAttributes::Virtual), nullptr, nullptr ); // Generate IL for 'SayHello' method. ILGenerator^ myMethodIL = myMethodBuilder->GetILGenerator(); myMethodIL->EmitWriteLine( myGreetingField ); myMethodIL->Emit( OpCodes::Ret ); MethodInfo^ sayHelloMethod = IHello::typeid->GetMethod( "SayHello" ); helloWorldTypeBuilder->DefineMethodOverride( myMethodBuilder, sayHelloMethod );

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に収録されているすべての辞書からTypeBuilder.AddInterfaceImplementation メソッドを検索する場合は、下記のリンクをクリックしてください。

- TypeBuilder.AddInterfaceImplementation メソッドのページへのリンク