ハロの外部記憶インターフェイス

そろそろ覚える努力が必要かも…

enumをリストとして繰り返し、設定名や値を取得する方法

Enumクラスを利用し、項目名と値を順に取得することが可能

テーブルのカラム名enum型で設定し、Insert文等を自動生成時便利に利用できる

enum eCLMS
{
	Top = 0
	,
	Middle
	,
	Bottom
}

foreach (eCLMS enumItem in Enum.GetValues(typeof(eCLMS)))
{
    Console.Write(Enum.Parse(typeof(eCLMS), enumItem.ToString()).ToString() + " <-");
    Console.WriteLine((int)enumItem.toString());
}

実行結果

Top <-0
Middle <-1
Bottom <-2

Enum -> 文字列

eCLMS val = eCLMS.Middle;
string result = Enum.GetName(typeof(eCLMS), val); // result == "Middle"

Enum -> int

int val = 1;
eCLMS result = (int)val; // result == eCLMS.Middle

文字列 -> Enum

string val = "Middle";
eCLMS result;
Enum.TryParse(val, true, out result); // result == eCLMS.Middle
  1. 途中のtrueは大文字小文字区分についてのオプション

int -> Enum

int val = 2;
eCLMS result = (eCLMS)Enum.ToObject(typeof(eCLMS), val); // result == eCLMS.Bottom