次の列挙型があります。
public enum Brands
{
HP = 1,
IBM = 2,
Lenovo = 3
}
それから、次の形式で辞書を作成したいと思います。
// key = name + "_" + id
// value = name
var brands = new Dictionary<string, string>();
brands[HP_1] = "HP",
brands[IBM_2] = "IBM",
brands[Lenovo_3] = "Lenovo"
これまでのところ、これを行ってきましたが、メソッドから辞書を作成するのは困難です:
public static IDictionary<string, string> GetValueNameDict<TEnum>()
where TEnum : struct, IConvertible, IComparable, IFormattable
{
if (!typeof(TEnum).IsEnum)
throw new ArgumentException("TEnum must be an Enumeration type");
var res = from e in Enum.GetValues(typeof (TEnum)).Cast<TEnum>()
select // couldn't do this
return res;
}
ありがとう!