예제 #1
0
        public static string GetDescription(Enum value, MultilingualDictionaryType dictType)
        {
            if (value == null)
            {
                return(string.Empty);
            }

            if (dictType == MultilingualDictionaryType.Japanese)
            {
                string description = value.ToString();
                var    fieldInfo   = value.GetType().GetField(description);
                var    attributes  =
                    (EnumDescriptionAttribute[])fieldInfo.GetCustomAttributes(typeof(EnumDescriptionAttribute), false);
                if (attributes != null && attributes.Length > 0)
                {
                    description = attributes[0].Description;
                }
                return(description);
            }
            else
            {
                string dictTypeHeader = dictType.ToString();
                string dictTypeKey    = string.Format("{0}_{1}.{2}", dictTypeHeader, value.GetType().ToString(), value.ToString());
                return(DictionaryInfo.GetDictValueForDictKeyForEnum(dictTypeKey));
            }
        }