zoukankan      html  css  js  c++  java
  • 枚举处理

    //=======================================================================================
    /****************************************************************************************
    *
    * 文件说明:
    * 作者:
    * 创始时间:2017/11/9 17:23:01
    * 创建说明:
    *****************************************************************************************/
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;

    namespace Manjinba.Communication.Common.Utils
    {
    public static class EnumUtil
    {
    private static Dictionary<string, Dictionary<string, string>> enumCache;

    private static Dictionary<string, Dictionary<string, string>> EnumCache
    {
    get
    {
    if (enumCache == null)
    {
    enumCache = new Dictionary<string, Dictionary<string, string>>();
    }
    return enumCache;
    }
    set { enumCache = value; }
    }

    public static string GetEnumText(this Enum en)
    {
    string enString = string.Empty;
    if (null == en) return enString;
    var type = en.GetType();
    enString = en.ToString();
    if (!EnumCache.ContainsKey(type.FullName))
    {
    var fields = type.GetFields();
    Dictionary<string, string> temp = new Dictionary<string, string>();
    foreach (var item in fields)
    {
    var attrs = item.GetCustomAttributes(typeof(DescriptionAttribute), false);
    if (attrs.Length == 1)
    {
    string v = ((DescriptionAttribute)attrs[0]).Description;
    temp.Add(item.Name, v);
    }
    }
    EnumCache.Add(type.FullName, temp);
    }
    if (EnumCache.ContainsKey(type.FullName))
    {
    if (EnumCache[type.FullName].ContainsKey(enString))
    {
    return EnumCache[type.FullName][enString];
    }
    }
    return enString;
    }
    }
    }

  • 相关阅读:
    浏览器返回按钮不会触发onLoad事件
    TCP慢启动算法
    TCP协议三次握手过程分析
    关于新增和编辑
    Mock, 让你的开发脱离接口
    到底数据驱动是个什么玩意
    pagination分页插件
    关于状态切换
    在线占位图网站
    Arduino nano 与 w5500模块的连接与调试
  • 原文地址:https://www.cnblogs.com/Nine4Cool/p/10540655.html
Copyright © 2011-2022 走看看