获取Enum []的int值

Jon*_*Jon 2 .net c# enums

我有一个方法,如:

public void DoIt(params MyEnum[] channels)
{

}
Run Code Online (Sandbox Code Playgroud)

有没有办法在参数中获取枚举的int值?

我试过var myInts = channels.Select(x => x.Value)但没有运气

Jus*_*ner 7

var myInts = channels.Cast<int>();
Run Code Online (Sandbox Code Playgroud)


Zak*_*ley 7

var ints = (int[]) (object) channels;
Run Code Online (Sandbox Code Playgroud)

  • 很好,虽然没有证件. (10认同)

Mat*_*ten 5

您可以在select子句中执行强制转换:

var myInts = channels.Select(x => (int)x);
Run Code Online (Sandbox Code Playgroud)


Mar*_*ell 5

另一种方法是在没有LINQ的情况下做同样的事情:

var vals = Array.ConvertAll(channels, c =>(int)c);
Run Code Online (Sandbox Code Playgroud)

  • 哈!任何人都知道你现在必须使用LINQ ...... (2认同)