TypeBuilder.DefineNestedType Метод

Определение

Определяет вложенный тип.

Перегрузки

Имя Описание
DefineNestedType(String, TypeAttributes, Type, Type[])

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

DefineNestedType(String, TypeAttributes, Type, PackingSize, Int32)

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

DefineNestedType(String, TypeAttributes, Type, PackingSize)

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

DefineNestedType(String)

Определяет вложенный тип, присвоив ему имя.

DefineNestedType(String, TypeAttributes, Type)

Определяет вложенный тип, учитывая его имя, атрибуты и тип, который он расширяет.

DefineNestedType(String, TypeAttributes)

Определяет вложенный тип, учитывая его имя и атрибуты.

DefineNestedType(String, TypeAttributes, Type, Int32)

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

DefineNestedType(String, TypeAttributes, Type, Type[])

Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs

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

public:
 System::Reflection::Emit::TypeBuilder ^ DefineNestedType(System::String ^ name, System::Reflection::TypeAttributes attr, Type ^ parent, cli::array <Type ^> ^ interfaces);
public System.Reflection.Emit.TypeBuilder DefineNestedType(string name, System.Reflection.TypeAttributes attr, Type? parent, Type[]? interfaces);
public System.Reflection.Emit.TypeBuilder DefineNestedType(string name, System.Reflection.TypeAttributes attr, Type parent, Type[] interfaces);
[System.Runtime.InteropServices.ComVisible(true)]
public System.Reflection.Emit.TypeBuilder DefineNestedType(string name, System.Reflection.TypeAttributes attr, Type parent, Type[] interfaces);
member this.DefineNestedType : string * System.Reflection.TypeAttributes * Type * Type[] -> System.Reflection.Emit.TypeBuilder
[<System.Runtime.InteropServices.ComVisible(true)>]
member this.DefineNestedType : string * System.Reflection.TypeAttributes * Type * Type[] -> System.Reflection.Emit.TypeBuilder
Public Function DefineNestedType (name As String, attr As TypeAttributes, parent As Type, interfaces As Type()) As TypeBuilder

Параметры

name
String

Короткое имя типа. name не может содержать внедренные значения NULL.

attr
TypeAttributes

Атрибуты типа.

parent
Type

Тип, который расширяет вложенный тип.

interfaces
Type[]

Интерфейсы, реализующие вложенный тип.

Возвращаемое значение

Определенный вложенный тип.

Атрибуты

Исключения

Вложенный атрибут не указан.

–или–

Этот тип запечатан.

–или–

Этот тип является массивом.

–или–

Этот тип является интерфейсом, но вложенный тип не является интерфейсом.

–или–

Длина name равно нулю или больше 1023.

–или–

Эта операция создаст тип с дубликатом FullName в текущей сборке.

name равно null.

–или–

Элемент массива interfaces .null

Комментарии

Этот метод можно использовать для создания вложенных типов даже после CreateType вызова метода в заключаемом типе.

Вложенный тип должен быть завершен, прежде чем вы сможете отразить его с помощью GetMembers, GetNestedTypeили GetNestedTypes.

См. описание CreateType порядка выполнения вложенных типов и вложенных типов.

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

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

DefineNestedType(String, TypeAttributes, Type, PackingSize, Int32)

Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs

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

public:
 System::Reflection::Emit::TypeBuilder ^ DefineNestedType(System::String ^ name, System::Reflection::TypeAttributes attr, Type ^ parent, System::Reflection::Emit::PackingSize packSize, int typeSize);
public System.Reflection.Emit.TypeBuilder DefineNestedType(string name, System.Reflection.TypeAttributes attr, Type? parent, System.Reflection.Emit.PackingSize packSize, int typeSize);
public System.Reflection.Emit.TypeBuilder DefineNestedType(string name, System.Reflection.TypeAttributes attr, Type parent, System.Reflection.Emit.PackingSize packSize, int typeSize);
member this.DefineNestedType : string * System.Reflection.TypeAttributes * Type * System.Reflection.Emit.PackingSize * int -> System.Reflection.Emit.TypeBuilder
Public Function DefineNestedType (name As String, attr As TypeAttributes, parent As Type, packSize As PackingSize, typeSize As Integer) As TypeBuilder

Параметры

name
String

Короткое имя типа. name не может содержать внедренные значения NULL.

attr
TypeAttributes

Атрибуты типа.

parent
Type

Тип, который расширяет вложенный тип.

packSize
PackingSize

Размер упаковки типа.

typeSize
Int32

Общий размер типа.

Возвращаемое значение

Определенный вложенный тип.

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

DefineNestedType(String, TypeAttributes, Type, PackingSize)

Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs

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

public:
 System::Reflection::Emit::TypeBuilder ^ DefineNestedType(System::String ^ name, System::Reflection::TypeAttributes attr, Type ^ parent, System::Reflection::Emit::PackingSize packSize);
public System.Reflection.Emit.TypeBuilder DefineNestedType(string name, System.Reflection.TypeAttributes attr, Type? parent, System.Reflection.Emit.PackingSize packSize);
public System.Reflection.Emit.TypeBuilder DefineNestedType(string name, System.Reflection.TypeAttributes attr, Type parent, System.Reflection.Emit.PackingSize packSize);
member this.DefineNestedType : string * System.Reflection.TypeAttributes * Type * System.Reflection.Emit.PackingSize -> System.Reflection.Emit.TypeBuilder
Public Function DefineNestedType (name As String, attr As TypeAttributes, parent As Type, packSize As PackingSize) As TypeBuilder

Параметры

name
String

Короткое имя типа. name не может содержать внедренные значения NULL.

attr
TypeAttributes

Атрибуты типа.

parent
Type

Тип, который расширяет вложенный тип.

packSize
PackingSize

Размер упаковки типа.

Возвращаемое значение

Определенный вложенный тип.

Исключения

Вложенный атрибут не указан.

–или–

Этот тип запечатан.

–или–

Этот тип является массивом.

–или–

Этот тип является интерфейсом, но вложенный тип не является интерфейсом.

–или–

Длина name равно нулю или больше 1023.

–или–

Эта операция создаст тип с дубликатом FullName в текущей сборке.

name равно null.

Комментарии

Этот метод можно использовать для создания вложенных типов даже после CreateType вызова метода в заключаемом типе.

Вложенный тип должен быть завершен, прежде чем вы сможете отразить его с помощью GetMembers, GetNestedTypeили GetNestedTypes.

См. описание CreateType порядка выполнения вложенных типов и вложенных типов.

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

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

DefineNestedType(String)

Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs

Определяет вложенный тип, присвоив ему имя.

public:
 System::Reflection::Emit::TypeBuilder ^ DefineNestedType(System::String ^ name);
public System.Reflection.Emit.TypeBuilder DefineNestedType(string name);
member this.DefineNestedType : string -> System.Reflection.Emit.TypeBuilder
Public Function DefineNestedType (name As String) As TypeBuilder

Параметры

name
String

Короткое имя типа. name не может содержать внедренные значения NULL.

Возвращаемое значение

Определенный вложенный тип.

Исключения

name Длина равно нулю или больше 1023.

–или–

Эта операция создаст тип с дубликатом FullName в текущей сборке.

name равно null.

Комментарии

Этот метод можно использовать для создания вложенных типов даже после CreateType вызова метода в заключаемом типе.

Вложенный тип должен быть завершен, прежде чем вы сможете отразить его с помощью GetMembers, GetNestedTypeили GetNestedTypes.

См. описание CreateType порядка выполнения вложенных типов и вложенных типов.

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

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

DefineNestedType(String, TypeAttributes, Type)

Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs

Определяет вложенный тип, учитывая его имя, атрибуты и тип, который он расширяет.

public:
 System::Reflection::Emit::TypeBuilder ^ DefineNestedType(System::String ^ name, System::Reflection::TypeAttributes attr, Type ^ parent);
public System.Reflection.Emit.TypeBuilder DefineNestedType(string name, System.Reflection.TypeAttributes attr, Type? parent);
public System.Reflection.Emit.TypeBuilder DefineNestedType(string name, System.Reflection.TypeAttributes attr, Type parent);
member this.DefineNestedType : string * System.Reflection.TypeAttributes * Type -> System.Reflection.Emit.TypeBuilder
Public Function DefineNestedType (name As String, attr As TypeAttributes, parent As Type) As TypeBuilder

Параметры

name
String

Короткое имя типа. name не может содержать внедренные значения NULL.

attr
TypeAttributes

Атрибуты типа.

parent
Type

Тип, который расширяет вложенный тип.

Возвращаемое значение

Определенный вложенный тип.

Исключения

Вложенный атрибут не указан.

–или–

Этот тип запечатан.

–или–

Этот тип является массивом.

–или–

Этот тип является интерфейсом, но вложенный тип не является интерфейсом.

–или–

Длина name равно нулю или больше 1023.

–или–

Эта операция создаст тип с дубликатом FullName в текущей сборке.

name равно null.

Комментарии

Этот метод можно использовать для создания вложенных типов даже после CreateType вызова метода в заключаемом типе.

Вложенный тип должен быть завершен, прежде чем вы сможете отразить его с помощью GetMembers, GetNestedTypeили GetNestedTypes.

См. описание CreateType порядка выполнения вложенных типов и вложенных типов.

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

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

DefineNestedType(String, TypeAttributes)

Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs

Определяет вложенный тип, учитывая его имя и атрибуты.

public:
 System::Reflection::Emit::TypeBuilder ^ DefineNestedType(System::String ^ name, System::Reflection::TypeAttributes attr);
public System.Reflection.Emit.TypeBuilder DefineNestedType(string name, System.Reflection.TypeAttributes attr);
member this.DefineNestedType : string * System.Reflection.TypeAttributes -> System.Reflection.Emit.TypeBuilder
Public Function DefineNestedType (name As String, attr As TypeAttributes) As TypeBuilder

Параметры

name
String

Короткое имя типа. name не может содержать внедренные значения NULL.

attr
TypeAttributes

Атрибуты типа.

Возвращаемое значение

Определенный вложенный тип.

Исключения

Вложенный атрибут не указан.

–или–

Этот тип запечатан.

–или–

Этот тип является массивом.

–или–

Этот тип является интерфейсом, но вложенный тип не является интерфейсом.

–или–

Длина name равно нулю или больше 1023.

–или–

Эта операция создаст тип с дубликатом FullName в текущей сборке.

name равно null.

Комментарии

Этот метод можно использовать для создания вложенных типов даже после CreateType вызова метода в заключаемом типе.

Вложенный тип должен быть завершен, прежде чем вы сможете отразить его с помощью GetMembers, GetNestedTypeили GetNestedTypes.

См. описание CreateType порядка выполнения вложенных типов и вложенных типов.

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

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

DefineNestedType(String, TypeAttributes, Type, Int32)

Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs
Исходный код:
TypeBuilder.cs

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

public:
 System::Reflection::Emit::TypeBuilder ^ DefineNestedType(System::String ^ name, System::Reflection::TypeAttributes attr, Type ^ parent, int typeSize);
public System.Reflection.Emit.TypeBuilder DefineNestedType(string name, System.Reflection.TypeAttributes attr, Type? parent, int typeSize);
public System.Reflection.Emit.TypeBuilder DefineNestedType(string name, System.Reflection.TypeAttributes attr, Type parent, int typeSize);
member this.DefineNestedType : string * System.Reflection.TypeAttributes * Type * int -> System.Reflection.Emit.TypeBuilder
Public Function DefineNestedType (name As String, attr As TypeAttributes, parent As Type, typeSize As Integer) As TypeBuilder

Параметры

name
String

Короткое имя типа. name не может содержать внедренные значения NULL.

attr
TypeAttributes

Атрибуты типа.

parent
Type

Тип, который расширяет вложенный тип.

typeSize
Int32

Общий размер типа.

Возвращаемое значение

Определенный вложенный тип.

Исключения

Вложенный атрибут не указан.

–или–

Этот тип запечатан.

–или–

Этот тип является массивом.

–или–

Этот тип является интерфейсом, но вложенный тип не является интерфейсом.

–или–

Длина name равно нулю или больше 1023.

–или–

Эта операция создаст тип с дубликатом FullName в текущей сборке.

name равно null.

Комментарии

Этот метод можно использовать для создания вложенных типов даже после CreateType вызова метода в заключаемом типе.

Вложенный тип должен быть завершен, прежде чем вы сможете отразить его с помощью GetMembers, GetNestedTypeили GetNestedTypes.

См. описание CreateType порядка выполнения вложенных типов и вложенных типов.

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

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