enum parameter c# example

Example 1: c# enum

// ---------------------- HOW TO USE ENUMS? ----------------------- //

// How to create?

public enum Colors   // It needs to be defined at the namespace level (outside any class)! 
{
	red = 1,
    green = 2,
    blue = 3,
    white = 4,
    black = 5

}

// How to get the values?

var itemRed = Colors.red;

Console.WriteLine((int)itemRed);  // Using casting to convert to int


// How to get the keys?

var itemX = 4;

Console.WriteLine((Colors)itemX);  // Using casting to convert to Colors
 

// How to convert enums to strings? 

var itemBlue = Colors.blue;

Console.WriteLine(itemBlue.ToString());


// How to convert strings to enums? 

var colorName = "green";

var enumName = (Colors)Enum.Parse(typeof(Colors), colorName);

Console.WriteLine(enumName);       // To see the key
Console.WriteLine((int)enumName);  // To see the value

Example 2: declare enum c#

enum Level 
{
  Low,
  Medium,
  High
}
enum Months
{
  January,    // 0
  February,   // 1
  March,      // 2
  April,      // 3
  May,        // 4
  June,       // 5
  July        // 6
}

Example 3: enum in method as argument c#

public static void MyEnumMethod(Enum e)
    {
        var enumValues = Enum.GetValues(e.GetType());
        // you can iterate over enumValues with foreach
    }

MyEnumMethod(new MyEnum());