DynamicMethod Constructor (String, MethodAttributes, CallingConventions, Type, Type, Module, Boolean)
Creates a dynamic method that is global to a module, specifying the method name, attributes, calling convention, return type, parameter types, module, and whether just-in-time (JIT) visibility checks should be skipped for types and members accessed by the Microsoft intermediate language (MSIL) of the dynamic method.
Assembly: mscorlib (in mscorlib.dll)
public DynamicMethod( string name, MethodAttributes attributes, CallingConventions callingConvention, Type returnType, Type parameterTypes, Module m, bool skipVisibility )
The name of the dynamic method. This can be a zero-length string, but it cannot be null.
- Type: System.Reflection.MethodAttributes
The calling convention for the dynamic method. Must be Standard.
A Type object that specifies the return type of the dynamic method, or null if the method has no return type.
An array of Type objects specifying the types of the parameters of the dynamic method, or null if the method has no parameters.
A Module representing the module with which the dynamic method is to be logically associated.
true to skip JIT visibility checks on types and members accessed by the MSIL of the dynamic method; otherwise, false.
An element of parameterTypes is null or Void.
m is a module that provides anonymous hosting for dynamic methods.
name is null.
m is null.
The dynamic method created with this constructor has access to public and internal (Friend in Visual Basic) members of all the public and internal types contained in module m.
Skipping the JIT compiler's visibility checks allows the dynamic method to access private and protected members of all other types in the module and in all other assemblies as well. This is useful, for example, when writing code to serialize objects.
For backward compatibility, this constructor demands SecurityPermission with the SecurityPermissionFlag.ControlEvidence flag if the following conditions are both true: m is a module other than the calling module, and the demand for ReflectionPermission with the ReflectionPermissionFlag.MemberAccess flag has failed. If the demand for SecurityPermission succeeds, the operation is allowed.
to skip JIT visibility checks, if skipVisibility is true. Associated enumeration: ReflectionPermissionFlag.MemberAccess.
to associate the dynamic method with a module other than the calling module. Associated enumeration: ReflectionPermissionFlag.RestrictedMemberAccess.
Available since 10
Available since 2.0
Portable Class Library
Supported in: portable .NET platforms
Available since 2.0
Windows Phone Silverlight
Available since 7.1