获取枚举整数的逗号分隔列表



This:

string csvEnums = string.Join(",", Enum.GetNames(typeof(Bla)));

返回:

X1,Y1

给定此枚举:

public enum Bla
{
    [Description("X")]
    X1 = 1,
    [Description("Y")]
    Y1 = 2
}

有没有类似的有效方法来获取逗号分隔列表:

1,2

尝试将返回数组转换为int GetValues()

string csvEnums = string.Join(",", Enum.GetValues(typeof(Bla)).Cast<int>());

GetValues()方法的问题是返回一个类型为 Array 的对象,并且没有可以正确处理它的Join()重载。

试试这个:

string csvEnums = string.Join(",", Enum.GetValues(typeof(Bla)).Cast<Bla>().Select(x=>(int)x));

最新更新