根据类型获取枚举中的文字

比如数据库里存的是数字,从枚举中获取相应的文字描述

公共方法

public static string GetEnumDesc<T>(T Enumtype)
{
if (Enumtype == null) throw new ArgumentNullException("Enumtype");
if (!Enumtype.GetType().IsEnum) throw new Exception("参数类型不正确");
return ((DescriptionAttribute)Enumtype.GetType().GetField(Enumtype.ToString()).GetCustomAttributes(typeof(DescriptionAttribute), false)[0]).Description;
}

实体中定义

public Enum.AccountValidationType AuthType { get; set; }

public string ValidationTypeStr { get; set; }

枚举类

/// <summary>
/// 验证码和链接类型
/// </summary>
public enum AccountValidationType
{
/// <summary>
/// 注册认证(创建网络)
/// </summary>
[Description("注册认证(创建网络)")]
Validation_A = 0,
/// <summary>
/// 强制认证(管理员要求强制认证)
/// </summary>
[Description("强制认证(管理员要求强制认证)")]
Validation_B = 1,
/// <summary>
/// 邀请认证(同域名)
/// </summary>
[Description("邀请认证(同域名)")]
Validation_C = 2

}

业务中写

validation.DescribeTypeStr = MDManage.Framework.Common.GetEnumDesc<AccountDescribeType>(validation.AuthTypeDesc);

时间: 2024-11-04 13:56:29

根据类型获取枚举中的文字的相关文章

javaScript 实现倒计时 + 获取网页中的文字

一.倒计时 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>文档标题</title> </head> <body> <p id="demo"></p> <script> // Set the date we're counting down to var count

根据元素类型获取tuple中的元素

最近做cinatra遇到这样的需求,根据一个type来获取对应的第一个元素,需要注意的一个问题是,如果没有这个类型的时候,通过编译期断言提醒使用者,实现代码如下: 1.C++14实现 template <class T, std::size_t N, class... Args> struct indexOf; template <class T, std::size_t N, class... Args> struct indexOf<T, N, T, Args...>

怎么获取textarea中选中文字

textarea设置select="saveSelectionText()" //保存选中内容 saveSelectionText: function () { var focusEle = document.activeElement.tagName; if (focusEle === 'TEXTAREA') { if (window.getSelection) { $scope.mark.selectionText[0] = window.getSelection().toStri

[C#]枚举操作(从枚举中获取Description,根据Description获取枚举,将枚举转换为ArrayList)工具类

关键代码: using System; using System.Collections; using System.Collections.Generic; using System.ComponentModel; using System.Reflection; namespace CSharpUtilHelpV2 { /// <summary> /// 基于.NET 2.0的枚举工具类 /// </summary> public static class EnumToolV2

zend framework获取数据库中枚举类enum的数据并将其转换成数组

在model中建立这样的模型,在其中写入获取枚举类的方法 class Student extends Zend_Db_Table{ protected $_name ='student'; protected $_primary ='id'; function getPartyEnum($enumname){ //适配器并获取数据 $db = $this->getAdapter(); $db->query("SET NAMES GBK"); $sql = $db->q

获取系统中已经安装的文字输入法

//获取系统中已经安装的文字输入法 InputLanguageCollection MyInputs = InputLanguage.InstalledInputLanguages; //获取当前输入法信息 InputLanguage CurrentInput = InputLanguage.CurrentInputLanguage; string language = CurrentInput.LayoutName; IntPtr pt = new IntPtr(134481924); for

获取html字符串中第一张图片的路径以及获取html字符串中的文字内容(去掉标签)

/** * 获取html字符串中第一张图片的路径 * @param htmlcontent * @return */ public static String getImgFromHtml(String htmlcontent){ if(htmlcontent!=null){ String regEx_img = "<img.*src\\s*=\\s*(.*?)[^>]*?>"; Pattern p_image = Pattern.compile(regEx_img,

获取SQL中某一列的类型及精度

SELECT @type=t.name, @prec=c.prec FROM sysobjects o        JOIN syscolumns c on o.id=c.id        JOIN systypes t on c.xusertype=t.xusertype WHERE o.name = @SortTable AND c.name = @SortName 获取SQL中某一列的类型及精度

EF获取DbContext中已注册的所有实体类型

/// <summary> /// 获取DbContext中已注册的实体类型 /// </summary> /// <typeparam name="T">DbContext上下文类型</typeparam> /// <param name="ass">实体所在程序集</param> /// <returns></returns> public IEnumerable&l