在C#中的枚举和foreach

15 浏览
0 Comments

在C#中的枚举和foreach

这个问题已经有了相应的答案:

可能是重复的问题:

C#:如何枚举一个枚举类型?

大家好,

我有一个枚举类型

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

我想把这个枚举类型循环,并按照以下格式创建一个对象数组

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

admin 更改状态以发布 2023年5月22日
0
0 Comments

好的,这可以实现(假设使用.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();

0