How do I convert an enum to a list in C#?

newWeb picture newWeb · Jul 22, 2009 · Viewed 432.5k times · Source

Is there a way to convert an enum to a list that contains all the enum's options?

Answer

Jake Pearson picture Jake Pearson · Jul 22, 2009

This will return an IEnumerable<SomeEnum> of all the values of an Enum.

Enum.GetValues(typeof(SomeEnum)).Cast<SomeEnum>();

If you want that to be a List<SomeEnum>, just add .ToList() after .Cast<SomeEnum>().

To use the Cast function on an Array you need to have the System.Linq in your using section.