PropertyInfo.GetRawConstantValue Method


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

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


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


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

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.


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.


For more information on constant values and the Constant table, see the ECMA Partition II documentation. The documentation is available online; see ECMA C# and Common Language Infrastructure Standards on MSDN and Standard ECMA-335 - Common Language Infrastructure (CLI) on the Ecma International Web site.

Applies to