Подтвердить что ты не робот

Перечисление в С# и foreach

Возможный дубликат:
С#: как перечислить перечисление?

Привет всем,

У меня есть Enum

public enum AttributeType
    {
        TextField = 1, 
        TextArea = 2,
        Date = 4, 
        Boolean = 8
    }

Я хочу сделать это перечисление и сделать массив объектов в этом формате

object data = new object[]
{
   // new object[] { 1,"TextField"}
   new object[] { enumValue, enumText}
};
4b9b3361

Ответ 1

Ну, это сделало бы это (предполагая .NET 3.5):

var allValues = (AttributeType[]) Enum.GetValues(typeof(AttributeType));

var array = allValues.Select(value => new object[] { value, value.ToString() })
                     .ToArray();

или используйте анонимный тип:

var array = allValues.Select(value => { Value = value, Name = value.ToString() })
                     .ToArray();