英語で読む

次の方法で共有


TypedReference.MakeTypedReference(Object, FieldInfo[]) メソッド

定義

重要

この API は CLS 準拠ではありません。

指定したオブジェクトとフィールド記述の一覧によって識別されるフィールドの TypedReference を作成します。

C#
public static TypedReference MakeTypedReference (object target, System.Reflection.FieldInfo[] flds);
C#
[System.CLSCompliant(false)]
public static TypedReference MakeTypedReference (object target, System.Reflection.FieldInfo[] flds);
C#
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
public static TypedReference MakeTypedReference (object target, System.Reflection.FieldInfo[] flds);

パラメーター

target
Object

flds の最初の要素で記述されるフィールドを格納したオブジェクト。

flds
FieldInfo[]

各要素が続く要素で記述されるフィールドを格納したフィールドを記述するフィールド記述のリスト。 記述される各フィールドは、値型にする必要があります。 フィールド記述は、型システムで提供される RuntimeFieldInfo オブジェクトであることが必要です。

戻り値

TypedReference

flds の最後の要素で記述されるフィールドの TypedReference

属性

例外

target または fldsnull です。

  • または - flds の要素は null です。

flds 配列に要素がありません。

  • または - flds の要素が RuntimeFieldInfo オブジェクトではありません。

  • または - flds の要素の IsInitOnly または IsStatic プロパティが true です。

パラメーター target に、flds の最初の要素で記述されるフィールドが含まれていません。または、flds の要素が、flds の続く要素で記述されるフィールドに含まれていないフィールドを記述しています。

  • または - flds の要素で記述されるフィールドが値型ではありません。

注釈

このメソッドはMakeTypedReference、いくつかのターミナル フィールドへの型指定された参照を返します。パラメーターtargetには、最初の要素によって記述されたフィールドが含まれます。最初のflds``flds要素で記述されたフィールドには、ターミナル フィールドに到達するまでの 2 番目のflds要素によって記述されたフィールドが含まれます。

注意

.NET Framework 2.0 Service Pack 1 以降では、このメソッドを使用して、呼び出し元にフラグが付与ReflectionPermissionReflectionPermissionFlag.RestrictedMemberAccessされている場合、および非パブリック メンバーの許可セットが呼び出し元の許可セットまたはそのサブセットに制限されている場合に、非パブリック メンバーにアクセスできます。 ( リフレクションのセキュリティに関する考慮事項を参照してください)。

この機能を使用するには、アプリケーションで .NET Framework 3.5 以降をターゲットにする必要があります。

適用対象

製品 バージョン
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8
.NET Standard 2.0, 2.1