RuntimeInfrastructure mscorlib [00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 ] 1.0.5000.0 2.0.0.0 4.0.0.0 This type is safe for multithreaded operations. System.Object System.Reflection.ICustomAttributeProvider System.Runtime.InteropServices._Assembly System.Runtime.Serialization.ISerializable System.Security.IEvidenceFactory System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None) System.Runtime.InteropServices.ComDefaultInterface(typeof(System.Runtime.InteropServices._Assembly)) System.Runtime.InteropServices.ComVisible(true)

Use the class to load assemblies, to explore the metadata and constituent parts of assemblies, to discover the types contained in assemblies, and to create instances of those types.

To get an array of objects representing the assemblies currently loaded into an application domain (for example, the default application domain of a simple project), use the method.

To load assemblies dynamically, the class provides the following static methods (Shared methods in Visual Basic). Assemblies are loaded into the application domain where the load operation occurs.

The recommended way to load assemblies is to use the method, which identifies the assembly to be loaded by its display name (for example, "System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"). The search for the assembly follows the rules described in How the Runtime Locates Assemblies.

The and methods enable you to load an assembly for reflection, but not for execution. For example, an assembly that targets a 64-bit platform can be examined by code that is running on a 32-bit platform.

The and methods are provided for rare scenarios in which an assembly must be identified by path.

To get an object for the currently executing assembly, use the method.

Many members of the class provide information about an assembly. For example:

The method returns an object that provides access to the parts of the assembly display name.

The method lists the attributes applied to the assembly.

The method provides access to the files in the assembly manifest.

The method provides the names of the resources in the assembly manifest.

The method lists all the types in the assembly. The method lists the types that are visible to callers outside the assembly. The method can be used to search for a particular type in the assembly. The method can be used to search for and create instances of types in the assembly.

For more information on assemblies, see Application Domains and Assemblies.

Represents an assembly, which is a reusable, versionable, and self-describing building block of a common language runtime application.

- Constructor
  4.0.0.0

  This constructor is invoked by derived classes during the construction of objects.

  Initializes a new instance of the class.

- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.String Absolute path from which the assembly was originally loaded.

  To get the absolute path to the loaded manifest-containing file, use the property instead.

  If the assembly was loaded as a byte array, using an overload of the method that takes an array of bytes, this property returns the location of the caller of the method, not the location of the loaded assembly.

  Gets the location of the assembly as specified originally, for example, in an object.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Object `` To be added. is the empty string ("") or "\0anything". is .

  Locates the specified type from this assembly and creates an instance of it using the system activator, using case-sensitive search.

  An instance of the specified type created with the default constructor; or null if is not found. The type is resolved using the default binder, without specifying culture or activation attributes, and with set to Public or Instance.

  The of the type to locate. 0
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Object `` `` To be added.

  Locates the specified type from this assembly and creates an instance of it using the system activator, with optional case-sensitive search.

  An instance of the specified type created with the default constructor; or null if is not found. The type is resolved using the default binder, without specifying culture or activation attributes, and with set to Public or Instance.

  The of the type to locate. true to ignore the case of the type name; otherwise, false.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Object `` `` `` `` `` `` ``

  The parameter is related to client-activated objects; see Client Activation.

  Locates the specified type from this assembly and creates an instance of it using the system activator, with optional case-sensitive search and having the specified culture, arguments, and binding and activation attributes.

  An instance of the specified type, or null if is not found. The supplied arguments are used to resolve the type, and to bind the constructor that is used to create the instance.

  The of the type to locate. true to ignore the case of the type name; otherwise, false. A bitmask that affects the way in which the search is conducted. The value is a combination of bit flags from . An object that enables the binding, coercion of argument types, invocation of members, and retrieval of MemberInfo objects via reflection. If is null, the default binder is used. An array that contains the arguments to be passed to the constructor. This array of arguments must match in number, order, and type the parameters of the constructor to be invoked. If the default constructor is desired, must be an empty array or null. An instance of CultureInfo used to govern the coercion of types. If this is null, the CultureInfo for the current thread is used. (This is necessary to convert a String that represents 1000 to a Double value, for example, since 1000 is represented differently by different cultures.) An array of one or more attributes that can participate in activation. Typically, an array that contains a single object. The specifies the URL that is required to activate a remote object.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.String `` ``

  The format of the returned string is:

  <FullTypeName>, <AssemblyDisplayName>

  See for a description of the format of the display name of an assembly.

  To accommodate changes in versions of the common language runtime, use this method rather than constructing the qualified name yourself. For information about qualified assembly names, see .

  Creates the name of a type qualified by the display name of its assembly.

  The full name of the type qualified by the display name of the assembly.

  The display name of an assembly. The full name of a type.
- Property
  4.0.0.0
  System.Collections.Generic.IEnumerable<System.Reflection.CustomAttributeData> To be added. To be added.

  Gets a collection that contains this assembly's custom attributes.

- Property
  4.0.0.0
  System.Collections.Generic.IEnumerable<System.Reflection.TypeInfo> To be added. To be added.

  Gets a collection of the types defined in this assembly.

- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.MethodInfo object for the Entry Point in the assembly if it exists. If there isn't an entry point in the assembly, the object is null.

  Gets the entry point of this assembly.

- Method
  2.0.0.0
  4.0.0.0
  System.Boolean `` To be added.

  Determines whether this assembly and the specified object are equal.

  true if is equal to this instance; otherwise, false.

  The object to compare with this instance.
- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.String To be added. To be added.

  Gets the URI, including escape characters, that represents the codebase.

- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Security.Policy.Evidence To be added.

  Evidence is the set of information that constitutes input to security policy decisions, such as what permissions can be granted to code.

  Gets the evidence for this assembly.

- Property
  4.0.0.0
  System.Collections.Generic.IEnumerable<System.Type> To be added. To be added.

  Gets a collection of the public types defined in this assembly that are visible outside the assembly.

- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.String

  A containing the full name of the assembly.

  The following example demonstrates using the property to get the full name of an assembly compiled into a file named "HelloWorld".

  `using System; using System.Reflection; public class AssemblyExample { public static void Main() { Assembly a = Assembly.Load("helloworld"); Console.WriteLine(a.FullName); } }`

  The output is

  HelloWorld, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null

  See for a description of the format of the display name of an assembly.

  Writing your own code to parse display names is not recommended. Instead, pass the display name to the constructor, which parses it and populates the appropriate fields of the new .

  In the .NET Framework version 2.0, processor architecture is added to assembly identity, and can be specified as part of assembly name strings. However, it is not included in the string returned by the property, for compatibility reasons. See .

  Gets the display name of the assembly.

  0
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.Assembly ``

  In order to call this method, you must have a object, which means that the assembly in which the class is defined must already be loaded.

  Gets the currently loaded assembly in which the specified class is defined.

  The assembly in which the specified class is defined.

  An object representing a class in the assembly that will be returned.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.Assembly

  If the method that calls the method is expanded inline by the just-in-time (JIT) compiler, or if its caller is expanded inline, the assembly that is returned by may differ unexpectedly. For example, consider the following methods and assemblies:

  Method M1 in assembly A1 calls .

  Method M2 in assembly A2 calls M1.

  Method M3 in assembly A3 calls M2.

  When M1 is not inlined, returns A2. When M1 is inlined, returns A3. Similarly, when M2 is not inlined, returns A2. When M2 is inlined, returns A3.

  This effect also occurs when M1 executes as a tail call from M2, or when M2 executes as a tail call from M3. You can prevent the JIT compiler from inlining the method that calls , by applying the attribute with the flag, but there is no similar mechanism for preventing tail calls.

  Returns the of the method that invoked the currently executing method.

  The Assembly object of the method that invoked the currently executing method.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Object[] ``

  This method implements the corresponding interface method. Therefore, the parameter must be specified even though it is ignored.

  In the .NET Framework version 2.0, this method returns security attributes if they are stored in the new metadata format. Assemblies compiled with version 2.0 use this format. Dynamic assemblies and assemblies compiled with earlier versions of the .NET Framework use the old XML format. See Emitting Declarative Security Attributes.

  A pseudo-attribute indicates bits of the core metadata that must be set when the attribute is present. Unlike a custom attribute that extends the metadata for a type and is saved along with the type, a pseudo-attribute modifies the metadata for the type and then is discarded. Some of the resulting bits cannot be accessed using existing reflection APIs.

  The following table summarizes the different pseudo-attributes and the accessors for the bits that are available in reflection.

  Pseudo-Attribute

  Metadata Bits

  Reflection Accessor

  DllImportAttribute

  CorPInvokeMap

  DLL name

  No accessor for PInvokeMap for ordinary method/global method attributes.

  No accessor for DLL name.

  GuidAttribute

  Stored as a real custom attribute.

  Accessed as a real custom attribute.

  ComImportAttribute

  CorTypeAttr.tdImport

  Type.Attributes.Import

  SerializableAttribute

  CorTypeAttr.tdSerializable

  Type.Attributes.Serializable

  NonSerializedAttribute

  CorFieldAttr.fdNotSerialized

  FieldInfo.Attributes.NotSerialized

  MethodImplAttribute

  CorMethodImpl

  MethodInfo.GetMethodImplementationFlags()

  ConstructorInfo.GetMethodImplementationFlags()

  MarshalAsAttribute

  Various bits.

  No accessor.

  PreserveSigAttribute

  CorMethodImpl.miOLE

  MethodInfo.GetMethodImplementationFlags().OLE

  ConstructorInfo.GetMethodImplementationFlags().OLE

  InAttribute

  CorParamAttr.pdIn

  ParameterInfo.Attributes.In

  OutAttribute

  CorParamAttr.pdOut

  ParameterInfo.Attributes.Out

  StructLayoutAttribute

  CorTypeAttr.tdLayoutSequential

  CorTypeAttr.tdExplicitLayout

  CorTypeAttr.tdAnsiClass

  CorTypeAttr.tdUnicodeClass

  CorTypeAttr.tdAutoClass

  Class packing.

  Type.Attributes.LayoutSequential

  Type.Attributes.ExplicitLayout

  Type.Attributes.AnsiClass

  Type.Attributes.UnicodeClass

  Type.Attributes.AutoClass

  No accessor.

  FieldOffsetAttribute

  Field offset.

  No accessor.

  AssemblyLoadAttribute

  CorAssemblyFlags

  No accessor or enumerator.

  Gets all the custom attributes for this assembly.

  An array that contains the custom attributes for this assembly.

  This argument is ignored for objects of type .
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Object[] `` ``

  This method implements the corresponding interface method. Therefore, the parameter must be specified even though it is ignored.

  In the .NET Framework version 2.0, this method returns security attributes if they are stored in the new metadata format. Assemblies compiled with version 2.0 use this format. Dynamic assemblies and assemblies compiled with earlier versions of the .NET Framework use the old XML format. See Emitting Declarative Security Attributes.

  A pseudo-attribute indicates bits of the core metadata that must be set when the attribute is present. Unlike a custom attribute that extends the metadata for a type and is saved along with the type, a pseudo-attribute modifies the metadata for the type and then is discarded. Some of the resulting bits cannot be accessed using existing reflection APIs.

  The following table summarizes the different pseudo-attributes and the accessors for the bits that are available in reflection.

  Pseudo-Attribute

  Metadata Bits

  Reflection Accessor

  DllImportAttribute

  CorPInvokeMap

  DLL name

  No accessor for PInvokeMap for ordinary method/global method attributes.

  No accessor for DLL name.

  GuidAttribute

  Stored as a real custom attribute.

  Accessed as a real custom attribute.

  ComImportAttribute

  CorTypeAttr.tdImport

  Type.Attributes.Import

  SerializableAttribute

  CorTypeAttr.tdSerializable

  Type.Attributes.Serializable

  NonSerializedAttribute

  CorFieldAttr.fdNotSerialized

  FieldInfo.Attributes.NotSerialized

  MethodImplAttribute

  CorMethodImpl

  MethodInfo.GetMethodImplementationFlags()

  ConstructorInfo.GetMethodImplementationFlags()

  MarshalAsAttribute

  Various bits.

  No accessor.

  PreserveSigAttribute

  CorMethodImpl.miOLE

  MethodInfo.GetMethodImplementationFlags().OLE

  ConstructorInfo.GetMethodImplementationFlags().OLE

  InAttribute

  CorParamAttr.pdIn

  ParameterInfo.Attributes.In

  OutAttribute

  CorParamAttr.pdOut

  ParameterInfo.Attributes.Out

  StructLayoutAttribute

  CorTypeAttr.tdLayoutSequential

  CorTypeAttr.tdExplicitLayout

  CorTypeAttr.tdAnsiClass

  CorTypeAttr.tdUnicodeClass

  CorTypeAttr.tdAutoClass

  Class packing.

  Type.Attributes.LayoutSequential

  Type.Attributes.ExplicitLayout

  Type.Attributes.AnsiClass

  Type.Attributes.UnicodeClass

  Type.Attributes.AutoClass

  No accessor.

  FieldOffsetAttribute

  Field offset.

  No accessor.

  AssemblyLoadAttribute

  CorAssemblyFlags

  No accessor or enumerator.

  Gets the custom attributes for this assembly as specified by type.

  An array that contains the custom attributes for this assembly as specified by .

  The type for which the custom attributes are to be returned. This argument is ignored for objects of type .
- Method
  4.0.0.0
  System.Collections.Generic.IList<System.Reflection.CustomAttributeData>

  Use this method to examine the custom attributes of code in the reflection-only context, in cases where the custom attributes themselves are defined in code that is loaded into the reflection-only context. Methods like and cannot be used in such cases, because they create instances of the attributes. Code in the reflection-only context cannot be executed. For more information and for example code, see the class.

  Returns information about the attributes that have been applied to the current , expressed as objects.

  A generic list of objects representing data about the attributes that have been applied to the current assembly.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.Assembly

  The method can return null when a managed assembly has been loaded from an unmanaged application. For example, if an unmanaged application creates an instance of a COM component written in C#, a call to the method from the C# component returns null, because the entry point for the process was unmanaged code rather than a managed assembly.

  Gets the process executable in the default application domain. In other application domains, this is the first executable that was executed by .

  The assembly that is the process executable in the default application domain, or the first executable that was executed by . Can return null when called from unmanaged code.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.Assembly

  To get the assembly that contains the method that called the currently executing code, use .

  Gets the assembly that contains the code that is currently executing.

  The assembly that contains the code that is currently executing.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Type[]

  The only types visible outside an assembly are public types and public types nested within other public types.

  Gets the public types defined in this assembly that are visible outside the assembly.

  An array that represents the types defined in this assembly that are visible outside the assembly.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.IO.FileStream ``

  This method works on both public and private resource files.

  The should not include the path to the file.

  Gets a for the specified file in the file table of the manifest of this assembly.

  A stream that contains the specified file, or null if the file is not found.

  The name of the specified file. Do not include the path to the file.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.IO.FileStream[]

  This method works on public and private resource files.

  This overload is equivalent to calling the overload and specifying false.

  Gets the files in the file table of an assembly manifest.

  An array of streams that contain the files.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.IO.FileStream[] ``

  This method works on public and private resource files.

  Gets the files in the file table of an assembly manifest, specifying whether to include resource modules.

  An array of streams that contain the files.

  true to include resource modules; otherwise, false.
- Method
  4.0.0.0
  System.Int32 To be added.

  Returns the hash code for this instance.

  A 32-bit signed integer hash code.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.Module[] To be added.

  Gets all the loaded modules that are part of this assembly.

  An array of modules.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.Module[] `` To be added.

  Gets all the loaded modules that are part of this assembly, specifying whether to include resource modules.

  An array of modules.

  true to include resource modules; otherwise, false.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.ManifestResourceInfo ``

  Resource information is returned only if the resource is visible to the caller, or the caller has .

  Returns information about how the given resource has been persisted.

  An object that is populated with information about the resource's topology, or null if the resource is not found.

  The case-sensitive name of the resource.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.String[]

  Resource information is returned only if the resource is visible to the caller, or the caller has .

  Returns the names of all the resources in this assembly.

  An array that contains the names of all the resources.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.IO.Stream ``

  A manifest resource is a resource (such as an image file) that is embedded in the assembly at compile time. For more information about manifest resources, see Microsoft .NET Framework Resource Basics in the MSDN Library.

  Resource information is returned only if the resource is visible to the caller, or the caller has .

  This method returns null if a private resource in another assembly is accessed and the caller does not have with the flag.

  If the assembly manifest lists a resource file, returns a object even if the resource file cannot be found on disk at the time. If the resource file is not found, passing the resulting object to the constructor causes an .

  Loads the specified manifest resource from this assembly.

  The manifest resource; or null if no resources were specified during compilation or if the resource is not visible to the caller.

  The case-sensitive name of the manifest resource being requested.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.IO.Stream `` ``

  For example, if the full name specified for is "MyNameSpace.MyClasses" and is "Net", this method overload searches for a resource named "MyNameSpace.Net".

  A manifest resource is a resource (such as an image file) that is embedded in the assembly at compile time. For more information about manifest resources, see Microsoft .NET Framework Resource Basics in the MSDN Library.

  Resource information is returned only if the resource is visible to the caller, or the caller has .

  This method returns null if a private resource in another assembly is accessed and the caller does not have with the flag.

  If the assembly manifest lists a resource file, returns a object even if the resource file cannot be found on disk at the time. If the resource file is not found, passing the resulting object to the constructor causes an .

  Loads the specified manifest resource, scoped by the namespace of the specified type, from this assembly.

  The manifest resource; or null if no resources were specified during compilation or if the resource is not visible to the caller.

  The type whose namespace is used to scope the manifest resource name. The case-sensitive name of the manifest resource being requested.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.Module ``

  This method works on file names.

  Classes in the Reflection.Emit namespace emit the scope name for a dynamic module. The scope name can be determined by the property. Pass the kind of module you want to Assembly.GetModule. For example, if you want the module that contains the assembly manifest, pass the scope name of the module to GetModule. Otherwise, pass the file name of the module. Assemblies loaded by one of the Load methods that have a byte[] parameter have only one module, and that is the manifest module. Always seek these modules using the scope name.

  A type can be retrieved from a specific module using . Calling Module.GetType on the module containing the manifest will not initiate a search of the entire assembly. To retrieve a type from an assembly, regardless of which module it is in, you must call .

  Gets the specified module in this assembly.

  The module being requested, or null if the module is not found.

  The name of the module being requested.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.Module[]

  This method works on public and private resource files.

  Modules must be emitted with file name extensions.

  Gets all the modules that are part of this assembly.

  An array of modules.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.Module[] ``

  This method works on public and private resource files.

  Modules must be emitted with file name extensions.

  Gets all the modules that are part of this assembly, specifying whether to include resource modules.

  An array of modules.

  true to include resource modules; otherwise, false.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.AssemblyName To be added.

  Gets an for this assembly.

  An object that contains the fully parsed display name for this assembly.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.AssemblyName `` To be added.

  Gets an for this assembly, setting the codebase as specified by .

  An object that contains the fully parsed display name for this assembly.

  true to set the to the location of the assembly after it was shadow copied; false to set to the original location.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Void `` `` To be added.

  Gets serialization information with all of the data needed to reinstantiate this assembly.

  The object to be populated with serialization information. The destination context of the serialization.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.AssemblyName[]

  Starting with the net_v40_long, the property of an object that is returned by this method is if there is no hash algorithm for the referenced assembly, or if the hash algorithm of the referenced assembly is not identified by the enumeration. In previous versions of the .NET Framework, the property returned in this situation.

  Gets the objects for all the assemblies referenced by this assembly.

  An array that contains the fully parsed display names of all the assemblies referenced by this assembly.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.Assembly ``

  Satellite assemblies contain localized resources, as distinct from main application assemblies, which contain non-localizable executable code and resources for a single culture that serve as the default or neutral culture.

  Call this method to use your current assembly version.

  Gets the satellite assembly for the specified culture.

  The specified satellite assembly.

  The specified culture.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.Assembly `` ``

  Satellite assemblies contain localized resources, as distinct from main application assemblies, which contain non-localizable executable code and resources for a single culture that serve as the default or neutral culture.

  Call the overload to use your current assembly version.

  If is null, the current assembly version is used if both the resource and main assemblies are signed.

  Gets the specified version of the satellite assembly for the specified culture.

  The specified satellite assembly.

  The specified culture. The version of the satellite assembly.
- Method
  System.Type To be added. To be added. To be added. 1.0.5000.0
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Type `` is equal to or starts with the null character ('\0'). is .

  This method only searches the current assembly instance. The parameter includes the namespace but not the assembly. To search other assemblies for a type, use the method overload, which can optionally include an assembly display name as part of the type name.

  If the type has been forwarded to another assembly, it is still returned by this method. For information on type forwarding, see Type Forwarding in the Common Language Runtime.

  Gets the object with the specified name in the assembly instance.

  An object that represents the specified class, or null if the class is not found.

  The full name of the type. 0
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Type `` ``

  This method only searches the current assembly instance. The parameter includes the namespace but not the assembly. To search other assemblies for a type, use the method overload, which can optionally include an assembly display name as part of the type name.

  If the type has been forwarded to another assembly, it is still returned by this method. For information on type forwarding, see Type Forwarding in the Common Language Runtime.

  The parameter only affects what happens when the type is not found. It does not affect any other exceptions that might be thrown. In particular, if the type is found but cannot be loaded, can be thrown even if is false.

  Gets the object with the specified name in the assembly instance and optionally throws an exception if the type is not found.

  An object that represents the specified class.

  The full name of the type. true to throw an exception if the type is not found; false to return null.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Type `` `` ``

  This method only searches the current assembly instance. The parameter includes the namespace but not the assembly. To search other assemblies for a type, use the method overload, which can optionally include an assembly display name as part of the type name.

  If the type has been forwarded to another assembly, it is still returned by this method. For information on type forwarding, see Type Forwarding in the Common Language Runtime.

  The parameter only affects what happens when the type is not found. It does not affect any other exceptions that might be thrown. In particular, if the type is found but cannot be loaded, can be thrown even if is false.

  Gets the object with the specified name in the assembly instance, with the options of ignoring the case, and of throwing an exception if the type is not found.

  An object that represents the specified class.

  The full name of the type. true to throw an exception if the type is not found; false to return null. true to ignore the case of the type name; otherwise, false.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Type[]

  The returned array includes nested types.

  If the method is called on an assembly and a type in that assembly is dependent on a type in an assembly that has not been loaded (for example, if it derives from a type in the second assembly), a is thrown. For example, this can happen if the first assembly was loaded with the or methods, and the second assembly was not loaded. It can also happen with assemblies loaded using the and methods if the second assembly cannot be located when the method is called.

  If a type has been forwarded to another assembly, it is not included in the returned array. For information on type forwarding, see Type Forwarding in the Common Language Runtime.

  Gets the types defined in this assembly.

  An array that contains all the types that are defined in this assembly.

  0
- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Boolean Boolean value whether the assembly was loaded from the GAC. To be added.

  Gets a value indicating whether the assembly was loaded from the global assembly cache.

- Property
  2.0.0.0
  4.0.0.0
  System.Runtime.InteropServices.ComVisible(false)
  System.Int64 To be added. To be added.

  Gets the host context with which the assembly was loaded.

- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Runtime.InteropServices.ComVisible(false)
  System.String Version of the CLR stored in the assembly.

  For example, the value for the .NET Framework version 1.1 would be v1.1.4322. The binary files for that version would be located in the path %windir%\Microsoft.NET\Framework\v1.1.4322.

  By default, is set to the version of the CLR used to build the assembly. However, it might have been set to another value at compile time.

  Gets a string representing the version of the common language runtime (CLR) saved in the file containing the manifest.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Boolean `` ``

  In the .NET Framework version 2.0, this method returns true if the assembly has security attributes stored in the new metadata format. Assemblies compiled with version 2.0 use this format. Dynamic assemblies and assemblies compiled with earlier versions of the .NET Framework use the old XML format. See Emitting Declarative Security Attributes.

  Indicates whether or not a specified attribute has been applied to the assembly.

  true if the attribute has been applied to the assembly; otherwise, false.

  The type of the attribute to be checked for this assembly. This argument is ignored for objects of this type.
- Property
  4.0.0.0
  System.Boolean To be added.

  Dynamic assemblies are represented by the derived class .

  When a dynamic assembly is saved to disk, the saved assembly is not dynamic. If the saved assembly is loaded into another application domain or process, the property returns false.

  Gets a value that indicates whether the current assembly was generated dynamically in the current process by using reflection emit.

- Property
  4.0.0.0
  System.Boolean To be added. To be added.

  Gets a value that indicates whether the current assembly is loaded with full trust.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.Assembly ``

  The trust level of an assembly that is loaded by using this method is the same as the trust level of the calling assembly. To load an assembly from a byte array with the trust level of the application domain, use the method overload. For more information about the use of evidence with overloads of the method that take byte arrays, see the method overload.

  Reflecting on C++ executable files might throw a . This is most likely caused by the C++ compiler stripping the relocation addresses or the .reloc section from your executable file. To preserve the .reloc address for your C++ executable file, specify /fixed:no when you are linking.

  Note that this method overload always creates a new object with its own mapping.

  Loads the assembly with a common object file format (COFF)-based image containing an emitted assembly. The assembly is loaded into the application domain of the caller.

  The loaded assembly.

  A byte array that is a COFF-based image containing an emitted assembly.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.Assembly ``

  is thrown if specifies the full assembly name and the first assembly that matches the simple name has a different version, culture, or public key token. The loader does not continue probing for other assemblies that match the simple name.

  Do not use an with only the property set. The property does not supply any elements of the assembly identity (such as name or version), so loading does not occur according to load-by-identity rules, as you would expect from the method. Instead, the assembly is loaded using load-from rules. For information about the disadvantages of using the load-from context, see the method overload or Best Practices for Assembly Loading.

  Whether certain permissions are granted or not granted to an assembly is based on evidence. The rules for assembly and security evidence merging are as follows:

  When you use a method with no parameter, the assembly is loaded with the evidence that the loader supplies.

  When you use a method with an parameter, pieces of evidence are merged. Pieces of evidence supplied as an argument to the method supersede pieces of evidence supplied by the loader.

  When you use a method overload with a Byte[] parameter to load a common object file format (COFF) image, evidence is inherited from the calling assembly. This applies to the .NET Framework version 1.1 Service Pack 1 (SP1) and subsequent releases.

  In the .NET Framework version 1.0 and in version 1.1 without SP1, when you use a method overload with a Byte[] parameter to load a COFF image, evidence is combined. Zone, Url and Site are inherited from the calling assembly, and Hash and StrongName are taken from the COFF assembly.

  When you use a method with a Byte[] parameter and to load a COFF image, only the supplied evidence is used. Evidence of the calling assembly and evidence of the COFF image is ignored.

  Reflecting on C++ executable files might throw a . This is most likely caused by the C++ compiler stripping the relocation addresses or the .reloc section from your executable file. To preserve the .reloc address for your C++ executable file, specify /fixed:no when you are linking.

  If both the property and the property are set, the first attempt to load the assembly uses the display name (including version, culture, and so on, as returned by the property). If the file is not found, is used to search for the assembly. If the assembly is found using , the display name is matched against the assembly. If the match fails, a is thrown.

  Loads an assembly given its .

  The loaded assembly.

  The object that describes the assembly to be loaded.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.Assembly `` is . is equal to or starts with the null character ('\0'). The identified by was not found. The identified by is not a valid assembly.

  is thrown if specifies the full assembly name, and the first assembly that matches the simple name has a different version, culture, or public key token. The loader does not continue probing for other assemblies that match the simple name.

  Whether certain permissions are granted or not granted to an assembly is based on evidence. The rules for assembly and security evidence merging are as follows:

  When you use a method with no parameter, the assembly is loaded with the evidence that the loader supplies.

  When you use a method with an parameter, pieces of evidence are merged. Pieces of evidence supplied as an argument to the method supersede pieces of evidence supplied by the loader.

  When you use a method overload with a Byte[] parameter to load a common object file format (COFF) image, evidence is inherited from the calling assembly. This applies to the .NET Framework version 1.1 Service Pack 1 (SP1) and subsequent releases.

  In the .NET Framework version 1.0 and in version 1.1 without SP1, when you use a method overload with a Byte[] parameter to load a COFF image, evidence is combined. Zone, Url and Site are inherited from the calling assembly, and Hash and StrongName are taken from the COFF assembly.

  When you use a method with a Byte[] parameter and to load a COFF image, only the supplied evidence is used. Evidence of the calling assembly and evidence of the COFF image is ignored.

  Reflecting on C++ executable files might throw a . This is most likely caused by the C++ compiler stripping the relocation addresses or the .reloc section from your executable file. To preserve the .reloc address for your C++ executable file, specify /fixed:no when you are linking.

  In the .NET Framework version 2.0, processor architecture is added to assembly identity, and can be specified as part of assembly name strings. For example, "ProcessorArchitecture=msil". However, the recommended way to specify an assembly name is to create an object and pass it to an appropriate overload of the method. See .

  Loads an assembly given the long form of its name.

  The loaded assembly.

  The long form of the assembly name. 0
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.Assembly `` ``

  The trust level of an assembly that is loaded by using this method is the same as the trust level of the calling assembly. To load an assembly from a byte array with the trust level of the application domain, use the method overload. For more information about the use of evidence with overloads of the method that take byte arrays, see the method overload.

  Reflecting on C++ executable files might throw a . This is most likely caused by the C++ compiler stripping the relocation addresses or the .reloc section from your executable file. To preserve the .reloc address for your C++ executable file, specify /fixed:no when you are linking.

  Note that this method overload always creates a new object with its own mapping.

  Loads the assembly with a common object file format (COFF)-based image containing an emitted assembly, optionally including symbols for the assembly. The assembly is loaded into the application domain of the caller.

  The loaded assembly.

  A byte array that is a COFF-based image containing an emitted assembly. A byte array that contains the raw bytes representing the symbols for the assembly.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Obsolete
  System.Reflection.Assembly `` ``

  is thrown if specifies the full assembly name, and the first assembly that matches the simple name has a different version, culture, or public key token. The loader does not continue probing for other assemblies that match the simple name.

  Do not use an with only the property set. The property does not supply any elements of the assembly identity (such as name or version), so loading does not occur according to load-by-identity rules, as you would expect from the method. Instead, the assembly is loaded using load-from rules. For information about the disadvantages of using the load-from context, see the method overload or Best Practices for Assembly Loading.

  Whether certain permissions are granted or not granted to an assembly is based on evidence. The rules for assembly and security evidence merging are as follows:

  When you use a method with no parameter, the assembly is loaded with the evidence that the loader supplies.

  When you use a method with an parameter, pieces of evidence are merged. Pieces of evidence supplied as an argument to the method supersede pieces of evidence supplied by the loader.

  When you use a method overload with a Byte[] parameter to load a common object file format (COFF) image, evidence is inherited from the calling assembly. This applies to the .NET Framework version 1.1 Service Pack 1 (SP1) and subsequent releases.

  In the .NET Framework version 1.0 and in version 1.1 without SP1, when you use a method overload with a Byte[] parameter to load a COFF image, evidence is combined. Zone, Url and Site are inherited from the calling assembly, and Hash and StrongName are taken from the COFF assembly.

  When you use a method with a Byte[] parameter and to load a COFF image, only the supplied evidence is used. Evidence of the calling assembly and evidence of the COFF image is ignored.

  Reflecting on C++ executable files might throw a . This is most likely caused by the C++ compiler stripping the relocation addresses or the .reloc section from your executable file. To preserve the .reloc address for your C++ executable file, specify /fixed:no when you are linking.

  If both the property and the property are set, the first attempt to load the assembly uses the display name (including version, culture, and so on, as returned by the property). If the file is not found, is used to search for the assembly. If the assembly is found using , the display name is matched against the assembly. If the match fails, a is thrown.

  If you call the method more than once on the same assembly but with a different evidence specified, the common language runtime does not throw a because the equality and integrity of the different evidence specifications cannot be determined. The evidence that first succeeds is the evidence that is used.

  Loads an assembly given its . The assembly is loaded into the domain of the caller using the supplied evidence.

  The loaded assembly.

  The object that describes the assembly to be loaded. Evidence for loading the assembly.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Obsolete
  System.Reflection.Assembly `` ``

  is thrown if specifies the full assembly name, and the first assembly that matches the simple name has a different version, culture, or public key token. The loader does not continue probing for other assemblies that match the simple name.

  Whether certain permissions are granted or not granted to an assembly is based on evidence. The rules for assembly and security evidence merging are as follows:

  When you use a method with no parameter, the assembly is loaded with the evidence that the loader supplies.

  When you use a method with an parameter, pieces of evidence are merged. Pieces of evidence supplied as an argument to the method supersede pieces of evidence supplied by the loader.

  When you use a method overload with a Byte[] parameter to load a common object file format (COFF) image, evidence is inherited from the calling assembly. This applies to the .NET Framework version 1.1 Service Pack 1 (SP1) and subsequent releases.

  In the .NET Framework version 1.0 and in version 1.1 without SP1, when you use a method overload with a Byte[] parameter to load a COFF image, evidence is combined. Zone, Url and Site are inherited from the calling assembly, and Hash and StrongName are taken from the COFF assembly.

  When you use a method with a Byte[] parameter and to load a COFF image, only the supplied evidence is used. Evidence of the calling assembly and evidence of the COFF image is ignored.

  Reflecting on C++ executable files might throw a . This is most likely caused by the C++ compiler stripping the relocation addresses or the .reloc section from your executable file. To preserve the .reloc address for your C++ executable file, specify /fixed:no when you are linking.

  If you call this method more than once on the same assembly but with a different evidence specified, the common language runtime does not throw a because the equality and integrity of the different evidence specifications cannot be determined. The evidence that first succeeds is the evidence that is used.

  In the .NET Framework version 2.0, processor architecture is added to assembly identity, and can be specified as part of assembly name strings. For example, "ProcessorArchitecture=msil". However, the recommended way to specify an assembly name is to create an object and pass it to an appropriate overload of the method. See .

  Loads an assembly given its display name, loading the assembly into the domain of the caller using the supplied evidence.

  The loaded assembly.

  The display name of the assembly. Evidence for loading the assembly.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Obsolete
  System.Reflection.Assembly `` `` ``

  The assembly is loaded into the domain of the caller using the supplied evidence. The raw bytes representing the symbols for the assembly are also loaded.

  Whether certain permissions are granted or not granted to an assembly is based on evidence. The rules for assembly and security evidence merging are as follows:

  When you use a method with no parameter, the assembly is loaded with the evidence that the loader supplies.

  When you use a method with an parameter, pieces of evidence are merged. Pieces of evidence supplied as an argument to the method supersede pieces of evidence supplied by the loader.

  When you use a method overload with a Byte[] parameter to load a COFF image, evidence is inherited from the calling assembly. This applies to the .NET Framework version 1.1 Service Pack 1 (SP1) and subsequent releases.

  In the .NET Framework version 1.0 and in version 1.1 without SP1, when you use a method overload with a Byte[] parameter to load a COFF image, evidence is combined. Zone, Url and Site are inherited from the calling assembly, and Hash and StrongName are taken from the COFF assembly.

  When you use a method with a Byte[] parameter and to load a COFF image, only the supplied evidence is used. Evidence of the calling assembly and evidence of the COFF image are ignored.

  Reflecting on C++ executable files might throw a . This is most likely caused by the C++ compiler stripping the relocation addresses or the .reloc section from your executable file. To preserve the .reloc address for your C++ executable file, specify /fixed:no when you are linking.

  If you call the method more than once on the same assembly but with a different evidence specified, the common language runtime does not throw a because the equality and integrity of the different evidence specifications cannot be determined. The evidence that first succeeds is the evidence that is used.

  Note that this method overload always creates a new object with its own mapping.

  Loads the assembly with a common object file format (COFF)-based image containing an emitted assembly, optionally including symbols and evidence for the assembly. The assembly is loaded into the application domain of the caller.

  The loaded assembly.

  A byte array that is a COFF-based image containing an emitted assembly. A byte array that contains the raw bytes representing the symbols for the assembly. Evidence for loading the assembly.
- Method
  4.0.0.0
  System.Reflection.Assembly `` `` ``

  The assembly is loaded into the application domain of the caller using the specified source for the security context. If was specified, the raw bytes that represent the symbols for the assembly are also loaded.

  Loads the assembly with a common object file format (COFF)-based image containing an emitted assembly, optionally including symbols and specifying the source for the security context. The assembly is loaded into the application domain of the caller.

  The loaded assembly.

  A byte array that is a COFF-based image containing an emitted assembly. A byte array that contains the raw bytes representing the symbols for the assembly. The source of the security context.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.Assembly ``

  Use the method to load and examine assemblies that have the same identity, but are located in different paths. does not load files into the context, and does not resolve dependencies using the load path, as the method does. is useful in this limited scenario because cannot be used to load assemblies that have the same identities but different paths; it will load only the first such assembly.

  Loads the contents of an assembly file on the specified path.

  The loaded assembly.

  The path of the file to load.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Obsolete
  System.Reflection.Assembly `` ``

  Use the method to load and examine assemblies that have the same identity, but are located in different paths. does not load files into the context, and does not resolve dependencies using the load path, as the method does. is useful in this limited scenario because cannot be used to load assemblies that have the same identities but different paths; it will load only the first such assembly.

  Loads an assembly given its path, loading the assembly into the domain of the caller using the supplied evidence.

  The loaded assembly.

  The path of the assembly file. Evidence for loading the assembly.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.Assembly ``

  The parameter must refer to a URI without escape characters. This method supplies escape characters for all invalid characters in the URI.

  File transfer protocol (FTP) is not supported. If the URI supplied for is an FTP address, the assembly is not loaded. No exception is thrown.

  may be absolute or relative to the current directory, and the assembly is loaded into the domain of the caller.

  Assemblies can be loaded into one of three contexts, or can be loaded without context:

  The load context contains assemblies found by probing: in the GAC, in a host assembly store if the runtime is hosted, or in the and of the application domain. Most overloads of the method load assemblies into this context.

  The load-from context contains assemblies for which the user provided a path not included in the directories searched by probing. , , and are examples of methods that load by path.

  The reflection-only context contains assemblies loaded with the and methods; code in these contexts cannot be executed.

  If the user generated or found the assembly, it is not in any context. This applies to assemblies loaded using overloads of the method that specify a byte array containing an assembly, and to transient dynamic assemblies created with reflection emit and not saved to disk.

  The load-from context allows an assembly to be loaded from a path not included in probing, and yet allows dependencies on that path to be found and loaded because the path information is maintained by the context.

  The method has the following disadvantages. Consider using instead.

  If an assembly with the same identity is already loaded, returns the loaded assembly even if a different path was specified.

  If an assembly is loaded with , and later an assembly in the load context attempts to load the same assembly by display name, the load attempt fails. This can occur when an assembly is de-serialized.

  If an assembly is loaded with , and the probing path includes an assembly with the same identity but a different location, an , , or other unexpected behavior can occur.

  demands and , or , on the specified path.

  If a native image exists for , it is not used. The assembly cannot be loaded as domain neutral.

  In the .NET Framework version 1.0 and 1.1, policy is not applied.

  Loads an assembly given its file name or path.

  The loaded assembly.

  The name or path of the file that contains the manifest of the assembly.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Obsolete
  System.Reflection.Assembly `` ``

  The parameter must refer to a URI without escape characters. This method supplies escape characters for all invalid characters in the URI.

  File transfer protocol (FTP) is not supported. If the URI supplied for is an FTP address, the assembly is not loaded. No exception is thrown.

  may be absolute or relative to the current directory, and the assembly is loaded into the domain of the caller.

  Assemblies can be loaded into one of three contexts, or can be loaded without context:

  The load context contains assemblies found by probing: in the GAC, in a host assembly store if the runtime is hosted, or in the and of the application domain. Most overloads of the method load assemblies into this context.

  The load-from context contains assemblies for which the user provided a path not included in the directories searched by probing. , , and are examples of methods that load by path.

  The reflection-only context contains assemblies loaded with the and methods; code in these contexts cannot be executed.

  If the user generated or found the assembly, it is not in any context. This applies to assemblies loaded using overloads of the method that specify a byte array containing an assembly, and to transient dynamic assemblies created with reflection emit and not saved to disk.

  The load-from context allows an assembly to be loaded from a path not included in probing, and yet allows dependencies on that path to be found and loaded because the path information is maintained by the context.

  The method has the following disadvantages. Consider using instead.

  If an assembly with the same identity is already loaded, returns the loaded assembly even if a different path was specified.

  If an assembly is loaded with , and later an assembly in the load context attempts to load the same assembly by display name, the load attempt fails. This can occur when an assembly is deserialized.

  If an assembly is loaded with , and the probing path includes an assembly with the same identity but a different location, an , , or other unexpected behavior can occur.

  demands and , or , on the specified path.

  If a native image exists for , it is not used. The assembly cannot be loaded as domain neutral.

  In the .NET Framework version 1.0 and 1.1, policy is not applied.

  Whether certain permissions are granted or not granted to an assembly is based on evidence. The rules for assembly and security evidence merging are as follows:

  When you use a method with no parameter, the assembly is loaded with the evidence that the loader supplies.

  When you use a method with an parameter, pieces of evidence are merged. Pieces of evidence supplied as an argument to the method supersede pieces of evidence supplied by the loader.

  If you call this method more than once on the same assembly but with a different evidence specified, the common language runtime does not throw a because the equality and integrity of the different evidence specifications cannot be determined. The evidence that first succeeds is the evidence that is used.

  When you use a method with a Byte[] parameter to load a common object file format (COFF) image, evidence is combined. Zone, Url and Site are inherited from the calling assembly, and Hash and StrongName are taken from the COFF assembly.

  When you use a method with a Byte[] parameter and to load a COFF image, only the supplied evidence is used. Evidence of the calling assembly and evidence of the COFF image is ignored.

  Loads an assembly given its file name or path and supplying security evidence.

  The loaded assembly.

  The name or path of the file that contains the manifest of the assembly. Evidence for loading the assembly.
- Method
  4.0.0.0
  System.Reflection.Assembly `` `` ``

  The parameter must refer to a URI without escape characters. This method supplies escape characters for all invalid characters in the URI.

  File transfer protocol (FTP) is not supported. If the URI supplied for is an FTP address, the assembly is not loaded. No exception is thrown.

  may be absolute or relative to the current directory, and the assembly is loaded into the domain of the caller.

  Assemblies can be loaded into one of three contexts, or can be loaded without context:

  The load context contains assemblies found by probing: in the global assembly cache, in a host assembly store if the runtime is hosted, or in the and of the application domain. Most overloads of the method load assemblies into this context.

  The load-from context contains assemblies for which the user provided a path that is not included in probing. , , and are examples of methods that load by path.

  The reflection-only context contains assemblies loaded with the and methods; code in these contexts cannot be executed.

  If the user generated or found the assembly, it is not in any context. This applies to assemblies loaded using overloads of the method that specify a byte array containing an assembly, and to transient dynamic assemblies created with reflection emit and not saved to disk.

  The load-from context allows an assembly to be loaded from a path that is not included in probing, and yet allows dependencies on that path to be found and loaded because the path information is maintained by the context.

  The method has the following disadvantages. Consider using instead.

  If an assembly with the same identity is already loaded, returns the loaded assembly even if a different path was specified.

  If an assembly is loaded with , and later an assembly in the load context attempts to load the same assembly by display name, the load attempt fails. This can occur when an assembly is deserialized.

  If an assembly is loaded with , and the probing path includes an assembly with the same identity but a different location, an , , or other unexpected behavior can occur.

  demands and , or , on the specified path.

  If a native image exists for , it is not used. The assembly cannot be loaded as domain-neutral.

  The assembly is loaded with the evidence that the loader supplies.

  Loads an assembly given its file name or path, hash value, and hash algorithm.

  The loaded assembly.

  The name or path of the file that contains the manifest of the assembly. The value of the computed hash code. The hash algorithm used for hashing files and for generating the strong name.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Obsolete
  System.Reflection.Assembly `` `` `` ``

  The parameter must refer to a URI without escape characters. This method supplies escape characters for all invalid characters in the URI.

  File transfer protocol (FTP) is not supported. If the URI supplied for is an FTP address, the assembly is not loaded. No exception is thrown.

  may be absolute or relative to the current directory, and the assembly is loaded into the domain of the caller.

  Assemblies can be loaded into one of three contexts, or can be loaded without context:

  The load context contains assemblies found by probing: in the GAC, in a host assembly store if the runtime is hosted, or in the and of the application domain. Most overloads of the method load assemblies into this context.

  The load-from context contains assemblies for which the user provided a path not included in the directories searched by probing. , , and are examples of methods that load by path.

  The reflection-only context contains assemblies loaded with the and methods; code in these contexts cannot be executed.

  If the user generated or found the assembly, it is not in any context. This applies to assemblies loaded using overloads of the method that specify a byte array containing an assembly, and to transient dynamic assemblies created with reflection emit and not saved to disk.

  The load-from context allows an assembly to be loaded from a path not included in probing, and yet allows dependencies on that path to be found and loaded because the path information is maintained by the context.

  The method has the following disadvantages. Consider using instead.

  If an assembly with the same identity is already loaded, returns the loaded assembly even if a different path was specified.

  If an assembly is loaded with , and later an assembly in the load context attempts to load the same assembly by display name, the load attempt fails. This can occur when an assembly is deserialized.

  If an assembly is loaded with , and the probing path includes an assembly with the same identity but a different location, an , , or other unexpected behavior can occur.

  demands and , or , on the specified path.

  If a native image exists for , it is not used. The assembly cannot be loaded as domain neutral.

  In the .NET Framework version 1.0 and 1.1, policy is not applied.

  Whether certain permissions are granted or not granted to an assembly is based on evidence. The rules for assembly and security evidence merging are as follows:

  When you use a method with no parameter, the assembly is loaded with the evidence that the loader supplies.

  When you use a method with an parameter, pieces of evidence are merged. Pieces of evidence supplied as an argument to the method supersede pieces of evidence supplied by the loader.

  If you call this method more than once on the same assembly but with a different evidence specified, the common language runtime does not throw a because the equality and integrity of the different evidence specifications cannot be determined. The evidence that first succeeds is the evidence that is used.

  When you use a method with a Byte[] parameter to load a common object file format (COFF) image, evidence is combined. Zone, Url and Site are inherited from the calling assembly, and Hash and StrongName are taken from the COFF assembly.

  When you use a method with a Byte[] parameter and to load a COFF image, only the supplied evidence is used. Evidence of the calling assembly and evidence of the COFF image is ignored.

  Loads an assembly given its file name or path, security evidence, hash value, and hash algorithm.

  The loaded assembly.

  The name or path of the file that contains the manifest of the assembly. Evidence for loading the assembly. The value of the computed hash code. The hash algorithm used for hashing files and for generating the strong name.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.Module `` `` To be added.

  Loads the module, internal to this assembly, with a common object file format (COFF)-based image containing an emitted module, or a resource file.

  The loaded module.

  The name of the module. This string must correspond to a file name in this assembly's manifest. A byte array that is a COFF-based image containing an emitted module, or a resource.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.Module `` `` `` To be added.

  Loads the module, internal to this assembly, with a common object file format (COFF)-based image containing an emitted module, or a resource file. The raw bytes representing the symbols for the module are also loaded.

  The loaded module.

  The name of the module. This string must correspond to a file name in this assembly's manifest. A byte array that is a COFF-based image containing an emitted module, or a resource. A byte array containing the raw bytes representing the symbols for the module. Must be null if this is a resource file.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Obsolete
  System.Reflection.Assembly ``

  Applications that load assemblies with this method will be affected by upgrades of those assemblies. Therefore, do not use this method; redesign the application to use the method overload or the method overload.

  This method first calls . If the assembly is not found, this method returns the assembly from the global assembly cache that has the same simple name, and the highest version number.

  Loads an assembly from the application directory or from the global assembly cache using a partial name.

  The loaded assembly. If is not found, this method returns null.

  The display name of the assembly.
- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Obsolete
  System.Reflection.Assembly `` ``

  Evidence is the set of information that constitutes input to security policy decisions, such as what permissions can be granted to code.

  Applications that load assemblies with this method will be affected by upgrades of those assemblies. Therefore, do not use this method; redesign the application to use the method or the method.

  This method first calls . If the assembly is not found, this method returns the assembly from the global assembly cache that has the same simple name, and the highest version number.

  Loads an assembly from the application directory or from the global assembly cache using a partial name. The assembly is loaded into the domain of the caller using the supplied evidence.

  The loaded assembly. If is not found, this method returns null.

  The display name of the assembly. Evidence for loading the assembly.
- Property
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.String Location of the loaded assembly.

  To get the location before the file has been shadow-copied, use the property.

  Gets the full path or UNC location of the loaded file that contains the manifest.

- Property
  2.0.0.0
  4.0.0.0
  System.Reflection.Module To be added. To be added.

  Gets the module that contains the manifest for the current assembly.

- Event
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.Reflection.ModuleResolveEventHandler

  This event gives the callback a chance to find and load the module itself and return it.

  Occurs when the common language runtime class loader cannot resolve a reference to an internal module of an assembly through normal means.

- Property
  4.0.0.0
  System.Collections.Generic.IEnumerable<System.Reflection.Module> To be added. To be added.

  Gets a collection that contains the modules in this assembly.

- Method
  4.0.0.0
  System.Boolean `` `` To be added.

  Indicates whether two objects are equal.

  true if is equal to ; otherwise, false.

  The assembly to compare to . The assembly to compare to .
- Method
  4.0.0.0
  System.Boolean `` `` To be added.

  Indicates whether two objects are not equal.

  true if is not equal to ; otherwise, false.

  The assembly to compare to . The assembly to compare to .
- Property
  4.0.0.0
  System.Security.PermissionSet To be added.

  objects can contain sensitive information such as paths. Therefore, full trust is required to access these objects.

  Gets the grant set of the current assembly.

- Property
  2.0.0.0
  4.0.0.0
  System.Runtime.InteropServices.ComVisible(false)
  System.Boolean To be added.

  If an assembly has been loaded into the reflection-only context, using the method, you cannot execute code in the assembly. To execute code, the assembly must be loaded into the execution context.

  Gets a value indicating whether this assembly was loaded into the reflection-only context.

- Method
  2.0.0.0
  4.0.0.0
  System.Reflection.Assembly ``

  You cannot execute code from an assembly loaded into the reflection-only context. To execute code, the assembly must be loaded into the execution context as well, using the method.

  The reflection-only context is no different from other contexts. Assemblies that are loaded into the context can be unloaded only by unloading the application domain.

  Loads the assembly from a common object file format (COFF)-based image containing an emitted assembly. The assembly is loaded into the reflection-only context of the caller's application domain.

  The loaded assembly.

  A byte array that is a COFF-based image containing an emitted assembly.
- Method
  2.0.0.0
  4.0.0.0
  System.Reflection.Assembly ``

  Dependencies are not automatically loaded into the reflection-only context.

  You cannot execute code from an assembly loaded into the reflection-only context. To execute code, the assembly must be loaded into the execution context as well, using the method.

  Whether certain permissions are granted or not granted to an assembly is based on evidence. The rules for assembly and security evidence merging are as follows:

  Reflecting on executable files compiled in C++ might throw a . This is most likely caused by the C++ compiler stripping the relocation addresses or the .reloc section from your executable file. To preserve the .reloc address, specify /fixed:no when you are linking.

  The reflection-only context is no different from other contexts. Assemblies that are loaded into the context can be unloaded only by unloading the application domain.

  Loads an assembly into the reflection-only context, given its display name.

  The loaded assembly.

  The display name of the assembly, as returned by the property.
- Method
  2.0.0.0
  4.0.0.0
  System.Reflection.Assembly ``

  Dependencies are not automatically loaded into the reflection-only context. To automatically load dependencies, handle the event and load the dependency in the event handler.

  You cannot execute code from an assembly that has been loaded into the reflection-only context. To execute the code, load the assembly with the method.

  The parameter must refer to a URI without escape characters. This method supplies escape characters for all invalid characters in the URI.

  The path specified for is relative to the current directory. The assembly is loaded into the domain of the caller.

  The reflection-only context is no different from other contexts. Assemblies that are loaded into the context can be unloaded only by unloading the application domain.

  Loads an assembly into the reflection-only context, given its path.

  The loaded assembly.

  The path of the file that contains the manifest of the assembly.
- Property
  4.0.0.0
  System.Security.SecurityRuleSet To be added.

  By default, assemblies that you compile with the net_v40_long have level 2 transparency, although you can explicitly make them level 1 instead. Assemblies that were compiled with earlier versions of the .NET Framework have level 1 transparency.

  See Security Changes in the .NET Framework 4.

  Gets a value that indicates which set of security rules the common language runtime (CLR) enforces for this assembly.

- Method
  4.0.0.0
  System.Type To be added.

  Returns the type of the current instance.

  An object that represents the type.

- Method
  1.0.5000.0
  2.0.0.0
  4.0.0.0
  System.String

  This method returns the of the current assembly.

  This method overrides .

  The following example demonstrates the use of the method in an assembly compiled into a file named "HelloWorld".

  `using System; using System.Reflection; public class AssemblyExample { public static void Main() { Assembly a = Assembly.Load("helloworld"); Console.WriteLine(a.ToString()); } }`

  The output is

  HelloWorld, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null

  Returns the full name of the assembly, also known as the display name.

  The full name of the assembly, or the class name if the full name of the assembly cannot be determined.

  0
- Method
  4.0.0.0
  System.Reflection.Assembly ``

  Use this method to load a local assembly that the operating system has flagged as having been loaded from the Web (for example, a temporary file that was downloaded from the Internet or intranet). Before the net_v40_long, such assemblies were automatically loaded into a sandboxed application domain. Starting with the net_v40_short, they are loaded with full trust.

  As an alternative to using this method, you can apply the <NetFx40_LegacySecurityPolicy> Element in your application configuration file. This causes the common language runtime to revert to the security policy of the net_v35_long.

  If you use either of these solutions, you must be certain that it is safe to load with full trust.

  For a discussion of load contexts, including the load-from context, see the method overload.

  Loads an assembly into the load-from context, bypassing some security checks.

  The loaded assembly.

  The name or path of the file that contains the manifest of the assembly.
0