From b5c75c9edf9c13a8bd4ba2f0596a1ceaf2563c6b Mon Sep 17 00:00:00 2001 From: sunpengfei <i@angelzzz.com> Date: 星期四, 14 八月 2025 10:05:30 +0800 Subject: [PATCH] feat:开发 --- FlexJobApi.Core/Utils/EnumUtils/EnumUtils.cs | 26 ++++++++++++++++++++------ 1 files changed, 20 insertions(+), 6 deletions(-) diff --git a/FlexJobApi.Core/Utils/EnumUtils/EnumUtils.cs b/FlexJobApi.Core/Utils/EnumUtils/EnumUtils.cs index 5421781..87302ab 100644 --- a/FlexJobApi.Core/Utils/EnumUtils/EnumUtils.cs +++ b/FlexJobApi.Core/Utils/EnumUtils/EnumUtils.cs @@ -1,6 +1,7 @@ 锘縰sing System; using System.Collections.Generic; using System.Linq; +using System.Reflection; using System.Text; using System.Threading.Tasks; @@ -89,13 +90,26 @@ /// <param name="model"></param> /// <param name="name"></param> /// <returns></returns> - public static T GetEnum<T>(this EnumModel<T> model, string name) - where T : struct + public static T GetEnum<T>(string name) + where T : struct, Enum { - return model.Items - .Where(it => it.Name.Equals(name, StringComparison.OrdinalIgnoreCase)) - .Select(it => it.Enum) - .FirstOrDefault(); + name = Enum.GetNames<T>().FirstOrDefault(it => it.Equals(name, StringComparison.OrdinalIgnoreCase)); + return Enum.Parse<T>(name); + } + + /// <summary> + /// 鑾峰彇鑷畾涔夌壒鎬� + /// </summary> + /// <typeparam name="TEnum"></typeparam> + /// <typeparam name="TAttribute"></typeparam> + /// <param name="enum"></param> + /// <returns></returns> + public static TAttribute GetCustomAttribute<TEnum, TAttribute>(this TEnum @enum) + where TEnum : struct + where TAttribute : Attribute + { + + return typeof(TEnum).GetMember(@enum.ToString())[0].GetCustomAttribute<TAttribute>(); } } } -- Gitblit v1.9.1