枚举在C#和foreach
可能重复:
C#:如何枚举枚举?
大家好,
我有一个Enum
public enum AttributeType { TextField = 1, TextArea = 2, Date = 4, Boolean = 8 }
我想要预先知道这个枚举,并以这种格式创建一个对象数组
object data = new object[] { // new object[] { 1,"TextField"} new object[] { enumValue, enumText} };
好吧,这样做(假设.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();