zoukankan      html  css  js  c++  java
  • net core中自定义特性以及获取自定义特性的方法

    1、新建FieldAliasNameAttribute类,继承ValidationAttribute

        /// <summary>
        /// 自定义表格中的字段特性
        /// </summary>
        public class FieldAliasNameAttribute : ValidationAttribute
        {
            /// <summary>
            /// 显示的名称
            /// </summary>
            public string Name { get; set; }
            public FieldAliasNameAttribute(string Name)
            {
                this.Name = Name;
            }
        }

    2、在实体类中调用FieldAliasName特性

            /// <summary>
            /// 活动名称
            /// </summary>
            [MaxLength(30)]
            [FieldAliasName("活动名称")]
            public string HUODONG_MC { get; set; }

    调用该特性的方法如下

    1、新建方法

            /// <summary>
            /// 获取列特性
            /// </summary>
            /// <typeparam name="T"></typeparam>
            /// <param name="propertyName"></param>
            /// <returns></returns>
            public static FieldAliasNameAttribute GetTableColumnAttribute(string propertyName, Type t)
            {
                if (t == null)
                {
                    return null;
                }
                FieldAliasNameAttribute m = null;
    
                //Type t = typeof(T);
                PropertyInfo[] arryProperty = t.GetProperties();
                if (arryProperty != null)
                {
                    foreach (PropertyInfo p in arryProperty)
                    {
                        if (p.Name == propertyName)
                        {
                            m = p.GetCustomAttribute<FieldAliasNameAttribute>();
                        }
                    }
                }
                return m;
            }

    2、方法调用

    FieldAliasNameAttribute colId = GetTableColumnAttribute("HUODONG_MC", 实体类);
    
    var aliasName=colId.Name
  • 相关阅读:
    Restful API
    事件冒泡
    DOM性能
    获取dom节点的所有子节点
    获取dom节点的父节点
    深拷贝
    Dropdown下拉菜单
    Breadcrumb面包屑
    【vue】----生产环境去除cosole.*
    刷leetcode时,重新认识LinkedList实现栈、队列或者双端队列
  • 原文地址:https://www.cnblogs.com/dushaojun/p/13902050.html
Copyright © 2011-2022 走看看