C#列挙タイプの取得汎用ツールクラスEnumTool
1、列挙された値が空であるか、列挙されていないとエラーが報告されることがあります.
2、値によって名前を取得してもエラーが発生する場合があります.
コードは次のとおりです.
1、値で名前をつける:EnumTool.GetKey(値);
2、名前で値を取る:EnumTool.GetValue(名前);
2、値によって名前を取得してもエラーが発生する場合があります.
コードは次のとおりです.
///
///
///
public enum Gender
{
= 1,
= 2,
}
:
public class EnumTool where T: Enum
{
public static int GetValue(string name)
{
try
{
if (Enum.Parse(typeof(T), name) != null)
return (int)Enum.Parse(typeof(T), name);
return 0;
}
catch (Exception)
{
return 0;
}
}
public static string GetKey(object value)
{
try
{
if (value!=null&&!string.IsNullOrWhiteSpace(value.ToString())&&value.ToString()!="0")
{
return Enum.Parse(typeof(T), value.ToString()).ToString();
}
return "";
}
catch (Exception)
{
return "";
}
}
}
3、使用時:1、値で名前をつける:EnumTool.GetKey(値);
2、名前で値を取る:EnumTool.GetValue(名前);