Module Класс

Определение

Выполняет отражение для модуля.

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
Наследование
Module
Производный
Атрибуты
Реализации

Примеры

В следующих примерах кода показано, как использовать отражение для получения сведений о модулях:

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

Комментарии

Модуль — это переносимый исполняемый файл, например type.dll или application.exe, состоящий из одного или нескольких классов и интерфейсов. В отдельном модуле может быть несколько пространств имен, а одно пространство имен может охватывать несколько модулей.

Один или несколько модулей, развертываемые как единое целое, образуют сборку. Сведения о создании сборки с несколькими модулями см. в разделе Многофайловая сборка.

Обратите внимание, что модуль платформа .NET Framework отличается от модуля в Visual Basic, который используется программистами для упорядочения функций и подпрограмм в приложении.

Конструкторы

Module()

Инициализирует новый экземпляр класса Module.

Поля

FilterTypeName

Объект TypeFilter, который фильтрует список типов, определенных в этом модуле на основе имени. Это поле учитывает регистр и доступно только для чтения.

FilterTypeNameIgnoreCase

Объект TypeFilter, который фильтрует список типов, определенных в этом модуле на основе имени. Это поле доступно только для чтения. В нем не учитывается регистр.

Свойства

Assembly

Возвращает соответствующую сборку Assembly для данного экземпляра Module.

CustomAttributes

Получает коллекцию, содержащая пользовательские атрибуты этого модуля.

FullyQualifiedName

Возвращает строку, содержащую полное имя и путь к этому модулю.

MDStreamVersion

Возвращает версию потока метаданных.

MetadataToken

Возвращает токен, который определяет модуль в метаданных.

ModuleHandle

Возвращает дескриптор модуля.

ModuleVersionId

Возвращает универсальный уникальный идентификатор (UUID), по которому можно различить две версии модуля.

Name

Возвращает строку String, представляющую имя модуля без пути.

ScopeName

Возвращает строку, представляющую имя модуля.

Методы

Equals(Object)

Определяет, равны ли этот модуль и заданный объект.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
FindTypes(TypeFilter, Object)

Возвращает массив классов, удовлетворяющих указанному фильтру и критериям фильтра.

GetCustomAttributes(Boolean)

Возвращает все настраиваемые атрибуты.

GetCustomAttributes(Type, Boolean)

Возвращает настраиваемые атрибуты заданного типа.

GetCustomAttributesData()

Возвращает список объектов CustomAttributeData для текущего модуля, который можно использовать в контексте, предназначенном только для отражения.

GetField(String)

Возвращает поле с указанным именем.

GetField(String, BindingFlags)

Возвращает поле с указанным именем и атрибутами привязки.

GetFields()

Возвращает глобальные поля, определенные в модуле.

GetFields(BindingFlags)

Возвращает глобальные поля, определенные в модуле, которые соответствуют заданным флагам привязки.

GetHashCode()

Возвращает хэш-код данного экземпляра.

GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetMethod(String)

Возвращает метод с указанным именем.

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

Возвращает метод, имеющий заданное имя, сведения о привязке, соглашение о вызовах и типы и модификаторы параметров.

GetMethod(String, Type[])

Возвращает метод, имеющий указанные имя и типы параметров.

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

Возвращает реализацию метода в соответствии с заданными критериями.

GetMethods()

Возвращает глобальные методы, определенные в модуле.

GetMethods(BindingFlags)

Возвращает глобальные методы, определенные в модуле, которые соответствуют заданным флагам привязки.

GetObjectData(SerializationInfo, StreamingContext)

Обеспечивает реализацию класса ISerializable для сериализованных объектов.

GetPEKind(PortableExecutableKinds, ImageFileMachine)

Возвращает пару значений, определяющих природу кода в модуле и платформе, на которой применяется этот модуль.

GetSignerCertificate()

Возвращает объект X509Certificate, соответствующий сертификату, включаемому в подпись Authenticode сборки, которой принадлежит этот модуль. Если сборка не имеет подписи Authenticode, возвращается значение null.

GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
GetType(String)

Возвращает заданный тип (выполняет поиск с учетом регистра).

GetType(String, Boolean)

Возвращает указанный тип, выполняя поиск в модуле с заданным требованием к учету регистра.

GetType(String, Boolean, Boolean)

Возвращает указанный тип, определяя, следует ли учитывать регистр при поиске модуля и должно ли создаваться исключение, если не удалось обнаружить этот тип.

GetTypes()

Возвращает все типы, определенные в этом модуле.

IsDefined(Type, Boolean)

Возвращает значение, обозначающее, применен ли к этому модулю указанный тип атрибутов.

IsResource()

Возвращает значение, указывающее, является ли объект ресурсом.

MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ResolveField(Int32)

Возвращает поле, определенное заданным токеном метаданных.

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

Возвращает поле, определенное заданным токеном метаданных, в контексте, определенном заданными параметрами универсального типа.

ResolveMember(Int32)

Возвращает тип члена, определенный заданным токеном метаданных.

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

Возвращает тип или член, которые определены заданным токеном метаданных, в контексте, определенном заданными параметрами универсального типа.

ResolveMethod(Int32)

Возвращает метод или конструктор, определенный заданным токеном метаданных.

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

Возвращает метод или конструктор, определенный заданным маркером метаданных, в контексте, определенном заданными параметрами универсального типа.

ResolveSignature(Int32)

Возвращает большой двоичный объект подписи, определенный токеном метаданных.

ResolveString(Int32)

Возвращает строку, определенную заданным маркером метаданных.

ResolveType(Int32)

Возвращает тип, определенный заданным токеном метаданных.

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

Возвращает тип, определенный заданным токеном метаданных, в контексте, определенном заданными параметрами универсального типа.

ToString()

Возвращает имя модуля.

Операторы

Equality(Module, Module)

Определение равенства двух объектов Module.

Inequality(Module, Module)

Определяет неравенство двух объектов Module.

Явные реализации интерфейса

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

Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации.

_Module.GetTypeInfo(UInt32, UInt32, IntPtr)

Возвращает сведения о типе объекта, которые затем могут использоваться для получения сведений о типе интерфейса.

_Module.GetTypeInfoCount(UInt32)

Возвращает количество предоставляемых объектом интерфейсов для доступа к сведениям о типе (0 или 1).

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

Предоставляет доступ к открытым свойствам и методам объекта.

ICustomAttributeProvider.GetCustomAttributes(Boolean)

Возвращает массив всех настраиваемых атрибутов, определенных для этого элемента, за исключением именованных атрибутов, или пустой массив, если атрибуты отсутствуют.

ICustomAttributeProvider.GetCustomAttributes(Type, Boolean)

Возвращает массив настраиваемых атрибутов, определенных для этого элемента с учетом типа, или пустой массив, если отсутствуют настраиваемые атрибуты определенного типа.

ICustomAttributeProvider.IsDefined(Type, Boolean)

Указывает, сколько экземпляров attributeType определено для этого элемента.

Методы расширения

GetCustomAttribute(Module, Type)

Извлекает пользовательский атрибут заданного типа, примененный к указанному модулю.

GetCustomAttribute<T>(Module)

Извлекает пользовательский атрибут заданного типа, примененный к указанному модулю.

GetCustomAttributes(Module)

Извлекает коллекцию настраиваемых атрибутов, примененных к указанному модулю.

GetCustomAttributes(Module, Type)

Извлекает коллекцию пользовательских атрибутов заданного типа, примененных к указанному модулю.

GetCustomAttributes<T>(Module)

Извлекает коллекцию пользовательских атрибутов заданного типа, примененных к указанному модулю.

IsDefined(Module, Type)

Указывает, применены ли какие-либо пользовательские атрибуты заданного типа к указанному модулю.

GetModuleVersionId(Module)

Выполняет отражение для модуля.

HasModuleVersionId(Module)

Выполняет отражение для модуля.

Применяется к