Freigeben über


TypeBuilder.DefineMethodOverride-Methode

Gibt einen angegebenen Methodenkörper an, der eine angegebene Methodendeklaration implementiert.

Namespace: System.Reflection.Emit
Assembly: mscorlib (in mscorlib.dll)

Syntax

'Declaration
Public Sub DefineMethodOverride ( _
    methodInfoBody As MethodInfo, _
    methodInfoDeclaration As MethodInfo _
)
'Usage
Dim instance As TypeBuilder
Dim methodInfoBody As MethodInfo
Dim methodInfoDeclaration As MethodInfo

instance.DefineMethodOverride(methodInfoBody, methodInfoDeclaration)
public void DefineMethodOverride (
    MethodInfo methodInfoBody,
    MethodInfo methodInfoDeclaration
)
public:
void DefineMethodOverride (
    MethodInfo^ methodInfoBody, 
    MethodInfo^ methodInfoDeclaration
)
public void DefineMethodOverride (
    MethodInfo methodInfoBody, 
    MethodInfo methodInfoDeclaration
)
public function DefineMethodOverride (
    methodInfoBody : MethodInfo, 
    methodInfoDeclaration : MethodInfo
)

Parameter

  • methodInfoBody
    Der zu verwendende Methodenkörper. Dies sollte ein MethodBuilder-Objekt sein.
  • methodInfoDeclaration
    Die Methode, deren Deklaration verwendet werden soll.

Ausnahmen

Ausnahmetyp Bedingung

ArgumentException

methodInfoBody gehört nicht zu dieser Klasse.

ArgumentNullException

methodInfoBody oder methodInfoDeclaration ist NULL (Nothing in Visual Basic).

InvalidOperationException

Der Typ wurde bereits mit CreateType erstellt.

- oder -

Der deklarierende Typ für den methodInfoBody der Methode ist nicht dieser Typ.

Hinweise

DefineMethodOverride definiert eine Methodenimplementierung. Eine Methodenimplementierung ist ein Tokenpunkt, der auf eine Implementierung zeigt und ein Token, das auf eine Deklaration zeigt, die vom Körper implementiert wird. Der Text muss für den Typ definiert werden, für den die Methodenimplemetierung definiert ist, und er muss virtuell (Overridable in Visual Basic) sein. Die Deklaration kann für eine Methode, die für eine vom Typ implementierte Schnittstelle definiert ist, für eine Methode in einer abgeleiteten Klasse oder für eine im Typ definierte Methode vorgenommen werden. Wenn die Deklaration nur für eine Schnittstelle vorliegt, wird der Slot für die Schnittstelle geändert. Wenn die Deklaration für eine Methode eines Basistyps vorgenommen wird, wird der Slot für die Methode überschrieben, und alle Duplikate für die überschriebene Methode werden ebenfalls ersetzt. Die überschriebene Methode darf nicht die eigentliche deklarierte Methode sein. Wenn die Methode für denselben Typ vorliegt, wird der Slot ersetzt, und alle Duplikate für die ersetzte Methode werden überschrieben.

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

TypeBuilder-Klasse
TypeBuilder-Member
System.Reflection.Emit-Namespace