Export (0) Print
Expand All

MethodBuilder.CreateMethodBody Method

Creates the body of the method using a supplied byte array of Microsoft intermediate language (MSIL) instructions.

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

member CreateMethodBody : 
        il:byte[] * 
        count:int -> unit

Parameters

il
Type: System.Byte[]

An array containing valid MSIL instructions. If this parameter is a null reference (Nothing in Visual Basic), the method's body is cleared.

count
Type: System.Int32

The number of valid bytes in the MSIL array. This value is ignored if MSIL is a null reference (Nothing in Visual Basic).

ExceptionCondition
ArgumentOutOfRangeException

The count is not within the range of indexes of the supplied MSIL instruction array and il is not a null reference (Nothing in Visual Basic).

InvalidOperationException

The containing type was previously created using CreateType.

-or-

This method was called previously on this MethodBuilder with an il argument that was not a null reference (Nothing in Visual Basic).

-or-

For the current method, the IsGenericMethod property is true, but the IsGenericMethodDefinition property is false.

This method creates the method's body from il, an array containing MSIL instructions as opcodes. The number of bytes of valid MSIL is given by count.

NoteNote

This is currently not fully supported. The user cannot supply the location of token fix ups and exception handlers.

In the example provided below, a simple method that adds two integers is generated via opcode using CreateMethodBody.

No code example is currently available or this language may not be supported.

.NET Framework

Supported in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, 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.

Show:
© 2014 Microsoft