1、建立自定义特性
public class RemarkAttribute : Attribute
{
public RemarkAttribute(string remark)
{
_Remark = remark;
}
private string _Remark;
public string Remark
{
get
{
return _Remark;
}
}
}
2、建立enum
public enum UserState
{
/// <summary>
/// 正常
/// </summary>
[Remark("正常")]
Normal = 0,
/// <summary>
/// 冻结
/// </summary>
[Remark("Frozen")]
Frozen = 1,
/// <summary>
/// 删除
/// </summary>
[Remark("删除")]
Delete = 2
}
3、建立Enum扩展
public static class RemarkExtend
{
public static string GetRemark(this Enum eValue)
{
Type type = eValue.GetType();
FieldInfo field = type.GetField(eValue.ToString());
RemarkAttribute remarkAttribute = (RemarkAttribute)field.GetCustomAttribute(typeof(RemarkAttribute));
return remarkAttribute.Remark;
}
}
4、直接使用自定义特性
UserState state = UserState.Normal;
string result= state.GetRemark();