英語で読む

次の方法で共有


FieldInfo.GetRawConstantValue メソッド

定義

コンパイラによってフィールドに関連付けられているリテラル値を返します。

C#
public virtual object? GetRawConstantValue();
C#
public virtual object GetRawConstantValue();

戻り値

フィールドに関連付けられているリテラル値を格納している Object。 リテラル値が、要素値がゼロに設定されているクラス型である場合、戻り値は null です。

例外

アンマネージ メタデータの定数テーブルに、現在のフィールドの定数値が含まれていません。

値の型は、共通言語仕様 (CLS) によって許可されているどの型でもありません。 ECMA Partition II 仕様「Metadata Logical Format: Other Structures」の「Element Types used in Signatures」を参照してください。

フィールドの定数値が設定されていません。

注釈

このメソッドは、マネージド コンパイラとコード アナライザーのデザイナー向けに提供されます。

このメソッドは、実行コンテキストとリフレクションのみのコンテキストの両方で使用できます。

アンマネージド メタデータでは、定数テーブルを使用して、フィールド、パラメーター、およびプロパティの定数値を格納します。 定数情報は、ランタイムの動作に直接影響を与えません。 コンパイラは、メタデータをインポートするときに、コンパイル時にこの情報を検査します。 使用した場合、定数の値は、コンパイラが出力する Microsoft 中間言語 (MSIL) ストリームに埋め込まれます。 実行時に定数テーブルにアクセスするために使用できる MSIL 命令はありません。

注意

定数値と定数テーブルの詳細については、 共通言語インフラストラクチャ (CLI) ドキュメントの「Partition II」を参照してください。

適用対象

製品 バージョン
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 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, 4.8.1
.NET Standard 1.5, 1.6, 2.0, 2.1