Enum.GetNames Метод

Определение

Перегрузки

Имя Описание
GetNames(Type)

Извлекает массив имен констант в указанном перечислении.

GetNames<TEnum>()

Извлекает массив имен констант в указанном типе перечисления.

GetNames(Type)

Исходный код:
Enum.cs
Исходный код:
Enum.cs
Исходный код:
Enum.cs
Исходный код:
Enum.cs
Исходный код:
Enum.cs

Извлекает массив имен констант в указанном перечислении.

public:
 static cli::array <System::String ^> ^ GetNames(Type ^ enumType);
public static string[] GetNames(Type enumType);
[System.Runtime.InteropServices.ComVisible(true)]
public static string[] GetNames(Type enumType);
static member GetNames : Type -> string[]
[<System.Runtime.InteropServices.ComVisible(true)>]
static member GetNames : Type -> string[]
Public Shared Function GetNames (enumType As Type) As String()

Параметры

enumType
Type

Тип перечисления.

Возвращаемое значение

String[]

Строковый массив имен констант в enumType.

Атрибуты

Исключения

enumType равно null.

enumType параметр не является параметром Enum.

.NET 8 и более поздних версий: enumType является логическим типом перечисления.

Примеры

В следующем примере показано использование 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(s);

        Console.WriteLine();

        Console.WriteLine("The members of the Styles enum are:");
        foreach(string s in Enum.GetNames(typeof(Styles)))
            Console.WriteLine(s);
    }
}
// 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
open System

type Colors =
    | Red = 0
    | Green = 1
    | Blue = 2
    | Yellow = 3

type Styles =
    | Plaid = 0
    | Striped = 1
    | Tartan = 2
    | Corduroy = 3

printfn "The members of the Colors enum are:"
for s in Enum.GetNames typeof<Colors> do
    printfn $"{s}"

printfn "\nThe members of the Styles enum are:"
for s in Enum.GetNames typeof<Styles> do
    printfn $"{s}"
// 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
Public Class GetNamesTest
    Enum Colors
        Red
        Green
        Blue
        Yellow
    End Enum 
    
    Enum Styles
        Plaid
        Striped
        Tartan
        Corduroy
    End Enum
    
    Public Shared Sub Main()
        
        Console.WriteLine("The members of the Colors enum are:")
        For Each s In [Enum].GetNames(GetType(Colors))
            Console.WriteLine(s)
        Next

        Console.WriteLine()
        
        Console.WriteLine("The members of the Styles enum are:")
        For Each s In [Enum].GetNames(GetType(Styles))
            Console.WriteLine(s)
        Next
    End Sub
End Class
' 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

Комментарии

Элементы массива возвращаемых значений сортируются по двоичным значениям перечисленных констант (то есть по их величине без знака). В следующем примере показаны сведения о массиве, возвращаемом GetNames методом для перечисления, включающего отрицательное, ноль и положительное значение.

using System;

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

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

type SignMagnitude =
   | Negative = -1
   | Zero = 0
   | Positive = 1

for name in Enum.GetNames typeof<SignMagnitude> do
    let p = Enum.Parse(typeof<SignMagnitude>, name)
    printfn $"{p,3:D}     0x{p:X}     {name}"

// The example displays the following output:
//         0     0x00000000     Zero
//         1     0x00000001     Positive
//        -1     0xFFFFFFFF     Negative
Public Enum SignMagnitude As Integer
   Negative = -1 
   Zero = 0
   Positive = 1
End Enum
   
Module Example
   Public Sub Main()
      Dim names() As String = [Enum].GetNames(GetType(SignMagnitude))
      For Each name In names
         Console.WriteLine("{0,3:D}     0x{0:X}     {1}", 
                           [Enum].Parse(GetType(SignMagnitude), name), 
                           name)
      Next
   End Sub
End Module
' The example displays the following output:
'      0     0x00000000     Zero
'      1     0x00000001     Positive
'     -1     0xFFFFFFFF     Negative

Если перечисляются константы с одинаковым значением, порядок их соответствующих имен не указан.

Применяется к

GetNames<TEnum>()

Исходный код:
Enum.cs
Исходный код:
Enum.cs
Исходный код:
Enum.cs
Исходный код:
Enum.cs
Исходный код:
Enum.cs

Извлекает массив имен констант в указанном типе перечисления.

public:
generic <typename TEnum>
 where TEnum : value class static cli::array <System::String ^> ^ GetNames();
public static string[] GetNames<TEnum>() where TEnum : struct;
static member GetNames : unit -> string[] (requires 'Enum : struct)
Public Shared Function GetNames(Of TEnum As Structure) () As String()

Параметры типа

TEnum

Тип перечисления.

Возвращаемое значение

String[]

Строковый массив имен констант в TEnum.

Исключения

.NET 8 и более поздних версий: TEnum является логическим типом перечисления.

Применяется к