zoukankan      html  css  js  c++  java
  • 枚举转List

    将枚举值转为list (name,value) 的形式

            /// <summary>
            /// 获取口味
            /// </summary>
            /// <returns></returns>
            private IList GetTastes()
            {
    
    
                var list = new ArrayList();
                var tastes = typeof(Domain.Model.Enums.Tastes);
                foreach (var i in Enum.GetValues(tastes))
                {
    
                    var value = i;
    
                    var field = i.GetType().GetField(i.ToString());
                    var display = Attribute.GetCustomAttribute(field, typeof(EnumDisplayAttribute)) as EnumDisplayAttribute;
    
                    var name = display == null ? field.Name : display.Name;
                    list.Add(new { name, value });
                }
                return list;
            }
    View Code
     /// <summary>
        /// 标记字段的显示名称的特性  
        /// </summary>
        [AttributeUsage(AttributeTargets.Field, AllowMultiple = false)]
        public sealed class EnumDisplayAttribute : Attribute
        {
            /// <summary>
            /// 显示名称
            /// </summary>
            public string Name { get; private set; }
    
            /// <summary>
            /// 标记字段的显示名称
            /// </summary>
            /// <param name="name">显示名称</param>
            public EnumDisplayAttribute(string name)
            {
                this.Name = name;
            }
        }
    View Code
  • 相关阅读:
    Celery
    MongoDB-简介
    人工智障
    Flask-session,WTForms,POOL,Websocket通讯原理 -握手,加密解密过程
    web-socket
    flask基础2
    flask的基础1
    项目部署
    nginx简单学习
    redis的安装与配置
  • 原文地址:https://www.cnblogs.com/Linyb/p/4369620.html
Copyright © 2011-2022 走看看