获得从Enum C#

问题描述:

所有底层ID列表我有一个枚举:获得从Enum C#

public enum Handlers 
{ 
    OnEditProfile = 6100, 
    OnResetAllIns = 6103, 
    OnHandHistory = 6104, 
    OnTransHistory = 6105, 
    OnChangeEmail = 6106, 
    OnValidateEmailThroughGameServer = 6107 
} 

我希望得到一个列表,如果所有的基础ID,这样最后的结果是这样的:

var allIntegers = new List<int>() 
{ 
    6100, 
    6103, 
    6104, 
    6105, 
    6106, 
    6107 
}; 

我经历了枚举方法,但找不到能做这项工作的任何东西。谢谢!

编辑:

Enum.GetValues(typeof(Handlers)).Cast<int>().ToList(); 

这看起来像是对我最好的解决方案,但由于某种原因,我不能.Cast<int>().ToList()。如果在这种情况下确实很重要,我正在使用.Net Framework 4.0。

+0

看一看[Enum.GetValues()](http://msdn.microsoft.com/en-us/库/ system.enum.getvalues.aspx)。 –

+0

你应该真的接受@Boluc Papuccuoglu的答案,因为你得到int列表,你问 –

+0

@Antonio Bakula - 看看我的编辑。当然,他的解决方案看起来是最好的,但由于某种原因,它不适合我。我不能投到int。任何关于此的建议都是值得欢迎的。谢谢! – Mdb

尝试:

Enum.GetValues(typeof(Handlers)).Cast<int>().ToList(); 
+1

打败我,但你是根据需要将它转换为列表的优胜者:D – Gusdor

Enum.GetValues(typeof(Handlers)); 

Read more here

您可以在一行中解决这个问题。

Enum.GetValues(typeof(Handlers)).Cast<int>(); 

http://msdn.microsoft.com/en-us/library/system.enum.getvalues.aspx

使用Enum.GetValues

foreach (Handlers handler in Enum.GetValues(typeof(Handlers))) 
{ 
} 

var list = Enum.GetValues(typeof(Handlers)).Cast<int>().ToList();