获得枚举的信息
2014-07-13 10:06:28 访问(3115) 赞(0) 踩(0)
实现代码
/// <summary>
/// 获得枚举的类全名
/// </summary>
/// <param name="em"></param>
/// <returns></returns>
public string GetEnumClassNameMessage(System.Enum em)
{
return em.GetType().FullName + "." + em.ToString();
}
调用示例
/// <summary>
/// 打印枚举信息
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btn_GetEnumClassNameMessage_Click(object sender, EventArgs e)
{
Response.Write
(
SlowXWebKnowledgeBLL.instance.GetEnumClassNameMessage
(
SlowX.WebKnowledge.Enums.UserRole.EmUserRole.部门领导
)
);
}
输出结果
SlowX.WebKnowledge.Enums.UserRole+EmUserRole.部门领导
应用示例代码
/// <summary>
/// 抛出异常的DEMO,通常在swich代码中,用于抛出异常提示。下面例子对枚举“普通职员”抛出对应的代码尚未实现的异常提示。
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btn_ThrowException_Click(object sender, EventArgs e)
{
GetEnumTip(SlowX.WebKnowledge.Enums.UserRole.EmUserRole.普通职员);
}
/// <summary>
/// 获得枚举提示
/// </summary>
/// <param name="em"></param>
/// <returns></returns>
protected string GetEnumTip(SlowX.WebKnowledge.Enums.UserRole.EmUserRole em)
{
switch (em)
{
case SlowX.WebKnowledge.Enums.UserRole.EmUserRole.管理员:
return "<font color='red'>" + em.ToString() + "</font>";
case SlowX.WebKnowledge.Enums.UserRole.EmUserRole.总经理:
return "<font color='green'>" + em.ToString() + "</font>";
case SlowX.WebKnowledge.Enums.UserRole.EmUserRole.部门领导:
return "<font color='blue'>" + em.ToString() + "</font>";
case SlowX.WebKnowledge.Enums.UserRole.EmUserRole.普通职员:
default:
throw new Exception
(
"方法:" + System.Reflection.MethodBase.GetCurrentMethod().ReflectedType.FullName
+ " "
+ System.Reflection.MethodBase.GetCurrentMethod().ToString()
+ " 发生异常:枚举"
+ em.GetType().FullName + "." + em.ToString()
+ "尚未实现。"
);
}
}
应用示例输出结果
方法:WebForms_WebPages_knowledges_common_SystemEnum_EnumDemo_Default System.String GetEnumTip(EmUserRole) 发生异常:枚举SlowX.WebKnowledge.Enums.UserRole+EmUserRole.普通职员尚未实现。
标签:
枚举信息 


ClassName 


ToString 


抛出异常 


上一条:
下一条:
相关评论
发表评论