NETCORE - enum 枚举

NETCORE - enum 枚举

 环境 .net6 webapi 

1. 创建枚举

复制代码
    internal enum FieldContrastPropertytypes
    {
        Id = 1,
        Type = 2,
        UnitTypeId = 3,
        Name = 4,
        ClassName = 5,
        UnitType = 6
    }
复制代码

 

2. 创建帮助类

复制代码
    internal class EnumAssist
    {
        public static List<TEnum> EnumValues<TEnum>() where TEnum : struct, IComparable, IFormattable, IConvertible
        {
            var enumType = typeof(TEnum);
            if (!enumType.IsEnum)
            {
                throw new ArgumentException();
            }
            return Enum.GetValues(enumType).Cast<TEnum>().ToList();
        }
    }
复制代码

 

 3. 使用

  var enumArr = EnumAssist.EnumValues<FieldContrastPropertytypes>();

 

 跟据编码获取名称 

例:

复制代码
    public enum EnumProxyType
    {
        None = 0,
        Layer = 1,
        Asset = 2,
        Founctional = 4,
        Entity = 8,
        Shape = 16,
        LibStander = 32,
        RootNode = 64,
        Group = 128,
        TileContent = 256,
        TilingGroup = 512,
        TilingGroupHandler = 1024,
        TilingContentHandler = 2048,
        OpenDesign = 4096,
        NodeProxy = 8192,
    }

var name=Enum.GetName(typeof(EnumProxyType), 4)
复制代码

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

引用:https://www.coder.work/article/969924

引用:https://stackoverflow.com/questions/23794691/extension-method-to-get-the-values-of-any-enum

 

posted @   无心々菜  阅读(182)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示