Module Classe

Definizione

Esegue la reflection su un modulo.

public ref class Module abstract
public ref class Module abstract : System::Reflection::ICustomAttributeProvider, System::Runtime::Serialization::ISerializable
public ref class Module abstract : System::Reflection::ICustomAttributeProvider
public ref class Module : System::Reflection::ICustomAttributeProvider, System::Runtime::InteropServices::_Module, System::Runtime::Serialization::ISerializable
public ref class Module abstract : System::Reflection::ICustomAttributeProvider, System::Runtime::InteropServices::_Module, System::Runtime::Serialization::ISerializable
public abstract class Module
public abstract class Module : System.Reflection.ICustomAttributeProvider, System.Runtime.Serialization.ISerializable
public abstract class Module : System.Reflection.ICustomAttributeProvider
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
public class Module : System.Reflection.ICustomAttributeProvider, System.Runtime.InteropServices._Module, System.Runtime.Serialization.ISerializable
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class Module : System.Reflection.ICustomAttributeProvider, System.Runtime.InteropServices._Module, System.Runtime.Serialization.ISerializable
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class Module : System.Reflection.ICustomAttributeProvider, System.Runtime.InteropServices._Module, System.Runtime.Serialization.ISerializable
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class Module : System.Reflection.ICustomAttributeProvider, System.Runtime.Serialization.ISerializable
type Module = class
type Module = class
    interface ICustomAttributeProvider
    interface ISerializable
type Module = class
    interface ICustomAttributeProvider
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
type Module = class
    interface _Module
    interface ISerializable
    interface ICustomAttributeProvider
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type Module = class
    interface _Module
    interface ISerializable
    interface ICustomAttributeProvider
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type Module = class
    interface ISerializable
    interface ICustomAttributeProvider
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type Module = class
    interface ISerializable
    interface ICustomAttributeProvider
    interface _Module
Public MustInherit Class Module
Public MustInherit Class Module
Implements ICustomAttributeProvider, ISerializable
Public MustInherit Class Module
Implements ICustomAttributeProvider
Public Class Module
Implements _Module, ICustomAttributeProvider, ISerializable
Public MustInherit Class Module
Implements _Module, ICustomAttributeProvider, ISerializable
Ereditarietà
Module
Derivato
Attributi
Implementazioni

Esempio

Gli esempi di codice seguenti illustrano come usare la reflection per ottenere informazioni sui moduli:

using System.Reflection;
using System;
public class Program {

    public static void Main() {
        Class1 c1 = new Class1();
        //  Show the current module.
        Module m = c1.GetType().Module;
        Console.WriteLine("The current module is {0}.", m.Name);

        //  List all modules in the assembly.
        Assembly curAssembly = typeof(Program).Assembly;
        Console.WriteLine("The current executing assembly is {0}.", curAssembly);

        Module[] mods = curAssembly.GetModules();
        foreach (Module md in mods) {
            Console.WriteLine("This assembly contains the {0} module", md.Name);
        }
        Console.ReadLine();
    }
}
class Class1 {
}
Imports System.Reflection

Public Class Program
    Public Shared Sub Main()

        Dim c1 As New Class1

        ' Show the current module.

        ' Note the brackets around "[Module]" to differentiate 
        ' it from the Visual Basic "Module" keyword.
        Dim m As [Module] = c1.GetType().Module
        Console.WriteLine("The current module is {0}.", m.Name)

        ' List all modules in the assembly.
        Dim curAssembly As Assembly = GetType(Program).Assembly
        Console.WriteLine("The executing assembly is {0}.", curAssembly)

        Dim mods() As [Module] = curAssembly.GetModules()

        For Each md As [Module] In mods
            Console.WriteLine("This assembly contains the {0} module", md.Name)
        Next
        Console.ReadLine()
    End Sub


End Class
Class Class1

End Class

Commenti

Un modulo è un file eseguibile portabile, ad esempio type.dll o application.exe, costituito da una o più classi e interfacce. Un singolo modulo può contenere più spazi dei nomi e uno spazio dei nomi può riguardare più moduli.

Uno o più moduli distribuiti come unità compongono un assembly. Per informazioni sulla creazione di un assembly con più di un modulo, vedere Assembly multifile.

Si noti che un modulo .NET Framework non corrisponde a un modulo in Visual Basic, che viene usato da un programmatore per organizzare funzioni e subroutine in un'applicazione.

Costruttori

Module()

Inizializza una nuova istanza della classe Module.

Campi

FilterTypeName

Oggetto TypeFilter che filtra l'elenco dei tipi definiti in questo modulo in base al nome. Questo campo è di sola lettura e fa distinzione tra maiuscole e minuscole.

FilterTypeNameIgnoreCase

Oggetto TypeFilter che filtra l'elenco dei tipi definiti in questo modulo in base al nome. Questo campo è di sola lettura e non fa distinzione tra maiuscole e minuscole.

Proprietà

Assembly

Ottiene l'oggetto Assembly appropriato per questa istanza di Module.

CustomAttributes

Ottiene una raccolta che contiene gli attributi personalizzati del modulo.

FullyQualifiedName

Ottiene una stringa che rappresenta il nome e il percorso completi di questo modulo.

MDStreamVersion

Ottiene la versione del flusso di metadati.

MetadataToken

Ottiene un token che identifica il modulo nei metadati.

ModuleHandle

Ottiene un handle per il modulo.

ModuleVersionId

Ottiene un nuovo UUID (Universally Unique Identifier) che può essere usato per la distinzione tra due versioni di un modulo.

Name

Ottiene un oggetto String che rappresenta il nome del modulo con il percorso rimosso.

ScopeName

Ottiene una stringa che rappresenta il nome del modulo.

Metodi

Equals(Object)

Determina se questo modulo e l'oggetto specificato sono uguali.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
FindTypes(TypeFilter, Object)

Restituisce una matrice di classi accettate dal filtro specificato e dai criteri di filtro.

GetCustomAttributes(Boolean)

Restituisce tutti gli attributi personalizzati.

GetCustomAttributes(Type, Boolean)

Ottiene gli attributi personalizzati del tipo specificato.

GetCustomAttributesData()

Restituisce un elenco di oggetti CustomAttributeData per il modulo corrente, che possono essere utilizzati nel contesto ReflectionOnly.

GetField(String)

Restituisce un campo con il nome specificato.

GetField(String, BindingFlags)

Restituisce un campo con il nome e gli attributi di associazione specificati.

GetFields()

Restituisce i campi globali definiti nel modulo.

GetFields(BindingFlags)

Restituisce i campi globali definiti nel modulo che corrispondono ai flag di associazione specificati.

GetHashCode()

Restituisce il codice hash per l'istanza.

GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetMethod(String)

Restituisce un metodo con il nome specificato.

GetMethod(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

Restituisce un metodo con nome, informazioni di associazione, convenzione di chiamata, tipi di parametro e modificatori specificati.

GetMethod(String, Type[])

Restituisce un metodo che ha il nome e i tipi di parametro specificati.

GetMethodImpl(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])

Restituisce l'implementazione del metodo secondo i criteri specificati.

GetMethods()

Restituisce i metodi globali definiti nel modulo.

GetMethods(BindingFlags)

Restituisce i metodi globali definiti nel modulo corrispondenti ai flag di associazione specificati.

GetObjectData(SerializationInfo, StreamingContext)

Fornisce un'implementazione dell'oggetto ISerializable per gli oggetti serializzati.

GetPEKind(PortableExecutableKinds, ImageFileMachine)

Ottiene una coppia di valori che indica il tipo di codice in un modulo e la piattaforma di destinazione del modulo.

GetSignerCertificate()

Restituisce un oggetto X509Certificate corrispondente al certificato incluso nella firma Authenticode dell'assembly a cui appartiene il modulo. Se l'assembly non è stato firmato con Authenticode, viene restituito null.

GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
GetType(String)

Restituisce il tipo specificato, eseguendo una ricerca con distinzione tra maiuscole e minuscole.

GetType(String, Boolean)

Restituisce il tipo specificato eseguendo la ricerca nel modulo con la distinzione tra maiuscole e minuscole specificata.

GetType(String, Boolean, Boolean)

Restituisce il tipo specificato e indica se eseguire una ricerca nel modulo con la distinzione tra maiuscole e minuscole e se deve essere generata un'eccezione se il tipo non viene trovato.

GetTypes()

Restituisce tutti i tipi definiti in questo modulo.

IsDefined(Type, Boolean)

Restituisce un valore che indica se il tipo di attributo specificato è stato applicato a questo modulo.

IsResource()

Ottiene un valore che indica se l'oggetto è una risorsa.

MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
ResolveField(Int32)

Restituisce il campo identificato dal token di metadati specificato.

ResolveField(Int32, Type[], Type[])

Restituisce il campo identificato dal token di metadati specificato, nel contesto definito dai parametri di tipo generico specificati.

ResolveMember(Int32)

Restituisce il tipo o il membro identificato dal token di metadati specificato.

ResolveMember(Int32, Type[], Type[])

Restituisce il tipo o il membro identificato dal token di metadati specificato nel contesto definito dai parametri di tipo generico specificati.

ResolveMethod(Int32)

Restituisce il metodo o il costruttore identificato dal token di metadati specificato.

ResolveMethod(Int32, Type[], Type[])

Restituisce il metodo o il costruttore identificato dal token di metadati specificato nel contesto definito dai parametri di tipo generico specificati.

ResolveSignature(Int32)

Restituisce il blob della firma identificato da un token di metadati.

ResolveString(Int32)

Restituisce la stringa identificata dal token di metadati specificato.

ResolveType(Int32)

Restituisce il tipo identificato dal token di metadati specificato.

ResolveType(Int32, Type[], Type[])

Restituisce il tipo identificato dal token di metadati specificato nel contesto definito dai parametri di tipo generico specificati.

ToString()

Restituisce il nome del modulo.

Operatori

Equality(Module, Module)

Indica se due oggetti Module sono uguali.

Inequality(Module, Module)

Indica se due oggetti Module non sono uguali.

Implementazioni dell'interfaccia esplicita

_Module.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Esegue il mapping di un set di nomi a un set corrispondente di ID dispatch.

_Module.GetTypeInfo(UInt32, UInt32, IntPtr)

Recupera le informazioni sul tipo relative a un oggetto che può quindi essere usato per ottenere informazioni sul tipo relative a un'interfaccia.

_Module.GetTypeInfoCount(UInt32)

Recupera il numero delle interfacce di informazioni sul tipo fornite da un oggetto (0 o 1).

_Module.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Fornisce l'accesso a proprietà e metodi esposti da un oggetto.

ICustomAttributeProvider.GetCustomAttributes(Boolean)

Restituisce una matrice di tutti gli attributi personalizzati definiti in questo membro, esclusi gli attributi denominati, oppure una matrice vuota se non sono presenti attributi personalizzati.

ICustomAttributeProvider.GetCustomAttributes(Type, Boolean)

Restituisce una matrice di attributi personalizzati definiti in questo membro, identificati dal tipo o da una matrice vuota, se non sono presenti attributi personalizzati di quel tipo.

ICustomAttributeProvider.IsDefined(Type, Boolean)

Indica se per questo membro sono definite una o più istanze di attributeType.

Metodi di estensione

GetCustomAttribute(Module, Type)

Recupera una attributo personalizzato di un tipo specificato che viene applicato a un modulo specificato.

GetCustomAttribute<T>(Module)

Recupera una attributo personalizzato di un tipo specificato che viene applicato a un modulo specificato.

GetCustomAttributes(Module)

Recupera una raccolta di attributi personalizzati che vengono applicati a un modulo specificato.

GetCustomAttributes(Module, Type)

Recupera una raccolta di attributi personalizzati di un tipo specificato che vengono applicati a un modulo specificato.

GetCustomAttributes<T>(Module)

Recupera una raccolta di attributi personalizzati di un tipo specificato che vengono applicati a un modulo specificato.

IsDefined(Module, Type)

Indica se vengono applicati attributi personalizzati del tipo specificato a un modulo specificato.

GetModuleVersionId(Module)
HasModuleVersionId(Module)

Si applica a