MethodBuilder.SetMethodBody Method
Creates the body of the method by using a specified byte array of Microsoft intermediate language (MSIL) instructions.
Assembly: mscorlib (in mscorlib.dll)
public void SetMethodBody( byte[] il, int maxStack, byte[] localSignature, IEnumerable<ExceptionHandler> exceptionHandlers, IEnumerable<int> tokenFixups )
Parameters
- il
- Type: System.Byte[]
An array that contains valid MSIL instructions.
- maxStack
- Type: System.Int32
The maximum stack evaluation depth.
- localSignature
- Type: System.Byte[]
An array of bytes that contain the serialized local variable structure. Specify null if the method has no local variables.
- exceptionHandlers
- Type: System.Collections.Generic.IEnumerable<ExceptionHandler>
A collection that contains the exception handlers for the method. Specify null if the method has no exception handlers.
- tokenFixups
- Type: System.Collections.Generic.IEnumerable<Int32>
A collection of values that represent offsets in il, each of which specifies the beginning of a token that may be modified. Specify null if the method has no tokens that have to be modified.
| Exception | Condition |
|---|---|
| ArgumentNullException | il is null. |
| ArgumentOutOfRangeException | maxStack is negative. -or- One of exceptionHandlers specifies an offset outside of il. -or- One of tokenFixups specifies an offset that is outside the il array. |
| InvalidOperationException | The containing type was previously created using the TypeBuilder.CreateType method. -or- This method was called previously on this MethodBuilder object. |
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.