/// <summary> /// GetEnumValueByTag 根据描述Tag获取对应的枚举值 /// </summary> public static object GetEnumValueByTag(Type enumType, object tag) { IList <EnumDescription> list = EnumDescription.DoGetFieldTexts(enumType); if (list == null) { return(null); } return(CollectionConverter.ConvertFirstSpecification <EnumDescription, object>(list, delegate(EnumDescription des) { return des.enumValue; }, delegate(EnumDescription des) { return des.tag.ToString() == tag.ToString(); })); }
/// <summary> /// GetFieldTag 获得指定枚举值的Tag。 /// </summary> /// <param name="enumValue"></param> /// <returns></returns> public static object GetFieldTag(object enumValue) { IList <EnumDescription> list = EnumDescription.DoGetFieldTexts(enumValue.GetType()); if (list == null) { return(null); } return(CollectionConverter.ConvertFirstSpecification <EnumDescription, object>(list, delegate(EnumDescription ed) { return ed.Tag; }, delegate(EnumDescription ed) { return ed.enumValue.ToString() == enumValue.ToString(); })); }