データベースに格納されている単純な整数を列挙値にマップするための静的辞書を保持しています。
static Dictionary<long, EModelType> AttributeIdTypeToEModelType =
new Dictionary<long, EModelType>()
{
{1, EModelType.StatStr},
{6, EModelType.HistStr},
{7, EModelType.HistVal}
};
大きな利点は、データがデータベースから到着するときに、列挙値を直接取得するために使用することです。
typ = AttributeIdTypeToEModelType[i];
このシステムの使用法はきちんとしていますが、これだけの静的辞書を持っていることは私にはきれいに見えません。
列挙子を使用してそれらの値をオーバーライドするためのよりクリーンな方法を見つけようとする機会はありませんでした。
何かアドバイス?