Pilihan lain adalah menggunakan Kelas Enumerasi yang dibuat oleh Jimmy Bogard .
Pada dasarnya, Anda harus membuat kelas yang mewarisi darinya Enumeration
. Contoh:
public class EmployeeType : Enumeration
{
public static readonly EmployeeType Manager
= new EmployeeType(0, "Manager");
public static readonly EmployeeType Servant
= new EmployeeType(1, "Servant");
public static readonly EmployeeType Assistant
= new EmployeeType(2, "Assistant to the Regional Manager");
private EmployeeType() { }
private EmployeeType(int value, string displayName) : base(value, displayName) { }
// Your method...
public override string ToString()
{
return $"{value} - {displayName}!";
}
}
Kemudian Anda dapat menggunakannya seperti enum, dengan kemungkinan untuk memasukkan metode di dalamnya (antara lain):
EmployeeType.Manager.ToString();
//0 - Manager
EmployeeType.Servant.ToString();
//1 - Servant
EmployeeType.Assistant.ToString();
//2 - Assistant to the Regional Manager
Anda dapat mengunduhnya dengan NuGet .
Walaupun implementasi ini bukan asli dalam bahasa, sintaks (konstruksi dan penggunaan) cukup dekat dengan bahasa yang mengimplementasikan enum secara asli lebih baik daripada C # ( misalnya Kotlin ).