FieldInfo.GetRawConstantValue Method

Definition

Returns a literal value associated with the field by a compiler.

public:
 virtual System::Object ^ GetRawConstantValue();
public virtual object? GetRawConstantValue ();
public virtual object GetRawConstantValue ();
abstract member GetRawConstantValue : unit -> obj
override this.GetRawConstantValue : unit -> obj
Public Overridable Function GetRawConstantValue () As Object

Returns

An Object that contains the literal value associated with the field. If the literal value is a class type with an element value of zero, the return value is null.

Exceptions

The Constant table in unmanaged metadata does not contain a constant value for the current field.

The type of the value is not one of the types permitted by the Common Language Specification (CLS). See the ECMA Partition II specification Metadata Logical Format: Other Structures, Element Types used in Signatures.

The constant value for the field is not set.

Remarks

This method is provided for designers of managed compilers and code analyzers.

This method can be used in both the execution context and the reflection-only context.

In unmanaged metadata, the Constant table is used to store constant values for fields, parameters, and properties. Constant information does not directly influence runtime behavior. Compilers inspect this information, at compile time, when importing metadata. If used, the value of a constant is embedded in the Microsoft intermediate language (MSIL) stream the compiler emits. There are no MSIL instructions that can be used to access the Constant table at run time.

Note

For more information on constant values and the Constant table, see Partition II of the Common Language Infrastructure (CLI) documentation.

Applies to