TypedReference.MakeTypedReference(Object, FieldInfo[]) Метод

Определение

Внимание

Этот API несовместим с CLS.

TypedReference Делает поле, определяемое указанным объектом и списком описаний полей.

public:
 static TypedReference MakeTypedReference(System::Object ^ target, cli::array <System::Reflection::FieldInfo ^> ^ flds);
public static TypedReference MakeTypedReference(object target, System.Reflection.FieldInfo[] flds);
[System.CLSCompliant(false)]
public static TypedReference MakeTypedReference(object target, System.Reflection.FieldInfo[] flds);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public static TypedReference MakeTypedReference(object target, System.Reflection.FieldInfo[] flds);
static member MakeTypedReference : obj * System.Reflection.FieldInfo[] -> TypedReference
[<System.CLSCompliant(false)>]
static member MakeTypedReference : obj * System.Reflection.FieldInfo[] -> TypedReference
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
static member MakeTypedReference : obj * System.Reflection.FieldInfo[] -> TypedReference
Public Shared Function MakeTypedReference (target As Object, flds As FieldInfo()) As TypedReference

Параметры

target
Object

Объект, содержащий поле, описанное первым элементом flds.

flds
FieldInfo[]

Список описаний полей, в которых каждый элемент описывает поле, содержащее поле, описанное успешным элементом. Каждое описанное поле должно быть типом значения. Описания полей должны быть RuntimeFieldInfo объектами, предоставленными системой типов.

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

A TypedReference для поля, описанного последним элементом flds.

Атрибуты

Исключения

target или flds есть null.

–или–

Элемент flds is null.

Массив flds не имеет элементов.

–или–

Элемент flds не RuntimeFieldInfo является объектом.

–или–

Свойство IsInitOnly или IsStatic свойство элементаflds.true

Параметр target не содержит поле, описанное первым элементом fldsили элементом flds , описывающим поле, которое не содержится в поле, описанном успешным элементом flds.

–или–

Поле, описанное элементом flds , не является типом значения.

Комментарии

Метод MakeTypedReference возвращает типизованную ссылку на некоторое поле терминала, где target параметр содержит поле, описанное первым элементом, поле, описанное первым элементом flds, содержит поле, описанное вторым элементом fldsflds, и т. д. до достижения поля терминала.

Note

Этот метод можно использовать для доступа к недоступным членам, если вызывающий объект был предоставлен ReflectionPermission с ReflectionPermissionFlag.RestrictedMemberAccess флагом, и если набор грантов, не являющихся открытыми, ограничен набором предоставления вызывающего объекта или подмножеством. (См. вопросы безопасности для отражения.)

Чтобы использовать эту функцию, приложение должно использовать платформу .NET Framework 3.5 или более поздней версии.

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