GetNames Method

Enum.GetNames Method

Updated: August 2011

Retrieves an array of the names of the constants in a specified enumeration.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

public static string[] GetNames(
	Type enumType


Type: System.Type

An enumeration type.

Return Value

Type: System.String[]
A string array of the names of the constants in enumType.


enumType is null.


enumType parameter is not an Enum.

The elements of the return value array are sorted by the binary values of the enumerated constants (that is, by their unsigned magnitude). The following example displays information about the array returned by the GetNames method for an enumeration that includes a negative, zero, and positive value.

using System;

enum SignMagnitude { Negative = -1, Zero = 0, Positive = 1 };

public class Example
   public static void Main()
      foreach (var value in Enum.GetNames(typeof(SignMagnitude))) {
         Console.WriteLine("{0,3:D}     0x{0:X}     {1}",
                           Enum.Parse(typeof(SignMagnitude), value),
}   }
// The example displays the following output: 
//         0     0x00000000     Zero 
//         1     0x00000001     Positive 
//        -1     0xFFFFFFFF     Negative

If there are enumerated constants with same value, the order of their corresponding names is unspecified.

The following example illustrates the use of GetNames.

using System;

public class GetNamesTest {
    enum Colors { Red, Green, Blue, Yellow };
    enum Styles { Plaid, Striped, Tartan, Corduroy };

    public static void Main() {

        Console.WriteLine("The members of the Colors enum are:");
        foreach(string s in Enum.GetNames(typeof(Colors)))


        Console.WriteLine("The members of the Styles enum are:");
        foreach(string s in Enum.GetNames(typeof(Styles)))
// The example displays the following output: 
//       The members of the Colors enum are: 
//       Red 
//       Green 
//       Blue 
//       Yellow 
//       The members of the Styles enum are: 
//       Plaid 
//       Striped 
//       Tartan 
//       Corduroy

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0




August 2011

Noted that values are ordered by their unsigned magnitude.

Content bug fix.

Community Additions

© 2015 Microsoft