zoukankan      html  css  js  c++  java
  • 反射类的一些基本用法

       /// <summry>
            /// 反射的命名空间和类名
            /// </summary>
            /// <param name="value">对象</param>
            /// <returns></returns>
            public string fanshe1(T value)
            {
                Type type1 = value.GetType();
                string a = type1.FullName;
                return a;
            }
    
            /// <summary>
            /// 反射所有的属性
            /// </summary>
            /// <param name="value">对象</param>
            /// <returns></returns>
            public string fanshe2(T value)
            {
                Type type1 = value.GetType();
                PropertyInfo[] a = type1.GetProperties();
                string allvalue = "";
                foreach (var item in a)
                {
                    allvalue += item.Name + ",";
                }
                string allvalue1 = allvalue.TrimEnd(',');
                return allvalue1;
            } 
    
            /// <summary>
            /// 反射所有属性值
            /// </summary>
            /// <param name="value">对象</param>
            /// <returns></returns>
            public string fanshe3(T value)
            {
                Type type1 = value.GetType();
                PropertyInfo[] a = type1.GetProperties();
                string allvalue = "";
                foreach (var item in a)
                {
                    allvalue+=item.GetValue(value, null).ToString()+",";
                }
               string allvalue1= allvalue.TrimEnd(',');
               return allvalue1;
            }
    
    
            /// <summary>
            /// 反射所有属性的类型
            /// </summary>
            /// <param name="value">对象</param>
            /// <returns></returns>
            public string fanshe4(T value)
            {
                Type type1 = value.GetType();
                PropertyInfo[] a = type1.GetProperties();
                string allvalue = "";
                foreach (var item in a)
                {
                    allvalue += item.PropertyType + ",";
                }
                string allvalue1 = allvalue.TrimEnd(',');
                return allvalue1;
            }
    
            /// <summary>
            /// 反射所有的公共构造方法
            /// </summary>
            /// <param name="value">对象</param>
            /// <returns></returns>
            public string fanshe5(T value)
            {
                Type type1 = value.GetType();
                ConstructorInfo[] a = type1.GetConstructors();
                string allvalue = "";
                foreach (var item in a)
                {
                    allvalue += item.Name.ToString() + ",";
                }
                string allvalue1 = allvalue.TrimEnd(',');
                return allvalue1;
            }
    
            /// <summary>
            /// 反射所有的方法
            /// </summary>
            /// <param name="value">对象</param>
            /// <returns></returns>
            public string fanshe6(T value)
            {
                Type type1 = value.GetType();
                MethodInfo[] a = type1.GetMethods(); 
                string allvalue = "";
                foreach (var item in a)
                {
                    allvalue += item.Name.ToString() + ",";
                }
                string allvalue1 = allvalue.TrimEnd(',');
                return allvalue1;
            }
    
  • 相关阅读:
    Zabbix 管理界面中文出现乱码解决方法
    zabbix应用监控实践
    linux系统基础优化
    linux下创建软链--laravel软链
    php使用webservice调用C#服务端/调用PHP服务端
    php+ajax远程加载避免重复提交
    date
    函数类型
    DOM及其扩展
    字符串的截取方法
  • 原文地址:https://www.cnblogs.com/srfree/p/3310367.html
Copyright © 2011-2022 走看看