public enum Foos { A, B, C }
有没有办法遍历可能的值Foos?
Foos
基本上?
foreach(Foo in Foos)
是的,你可以使用的GetValues方法:
GetValues
var values = Enum.GetValues(typeof(Foos));
或键入的版本:
var values = Enum.GetValues(typeof(Foos)).Cast<Foos>();
很久以前,我就在这种情况下向私有库添加了一个辅助函数:
public static class EnumUtil { public static IEnumerable<T> GetValues<T>() { return Enum.GetValues(typeof(T)).Cast<T>(); } }
用法:
var values = EnumUtil.GetValues<Foos>();