1、定义一个类

public class Person
{public string Name { get; set; }public int ID { get; set; }
}

2、获取属性

方法一、定义一个类的对象获取

Person p = new Person();
foreach (System.Reflection.PropertyInfo info in p.GetType().GetProperties())
{Console.WriteLine(info.Name);
}

方法二、通过类获取

var properties = typeof(Person).GetProperties();
foreach (System.Reflection.PropertyInfo info in properties)
{Console.WriteLine(info.Name);
}

3、通过属性名获取对象属性值

p.Name = "张三";
var name = p.GetType().GetProperty("Name").GetValue(p, null);
Console.WriteLine(name);

4、完整代码及结果显示

var properties = typeof(Person).GetProperties();
foreach (System.Reflection.PropertyInfo info in properties)
{Console.WriteLine(info.Name);
}
Console.WriteLine("另一种遍历属性的方法:");Person p = new Person();
foreach (System.Reflection.PropertyInfo info in p.GetType().GetProperties())
{Console.WriteLine(info.Name);
}Console.WriteLine("通过属性值获取属性:");p.Name = "张三";
var name = p.GetType().GetProperty("Name").GetValue(p, null);
Console.WriteLine(name);
Console.ReadLine();

Type t = tc.GetType();//获得该类的Type

//再用Type.GetProperties获得PropertyInfo[],然后就可以用foreach 遍历了
foreach (PropertyInfo pi in t.GetProperties
{
object value1 = pi.GetValue(tc, null));//用pi.GetValue获得值
string name = pi.Name;//获得属性的名字,后面就可以根据名字判断来进行些自己想要的操作
//获得属性的类型,进行判断然后进行以后的操作,例如判断获得的属性是整数
if(value1.GetType() == typeof(int))
{
//进行你想要的操作
}
}
public int Pid
{
get { return pid; }
set { pid = value; }
}

//****************

public void InitialProperty()//初始化设定
        {
            System.Reflection.PropertyInfo[] properties = this.GetType().GetProperties();
            foreach(var v in properties)
            {
               string type= v.PropertyType.Name;
                if (type=="String")
                {
                    v.SetValue(this,"456",null);
                }
                else if(type=="Bitmap")
                {
                    v.SetValue(this, new Bitmap(Image.FromFile("1.png")), null);
                }

}

}

C#类的属性遍历及属性值获取相关推荐

  1. 2020.10.25 对象的创建 利用构造函数创建对象 遍历对象属性 遍历函数属性和属性数值for in 内置对象

    输出遵循变量的值就近原则 对象创建方法 : 第一种 var obj = { uname:'dengzhu',//属性的创建,多个属性创建之间用逗号隔开 sex: male; sayHi: functi ...

  2. java循环遍历类属性_java循环遍历类属性 get 和set值方法

    //遍历sqspb类 成员为String类型 属性为空的全部替换为"/" Field[] fields = sqspb.getClass().getDeclaredFields() ...

  3. java set循环取值_java循环遍历类属性 get 和set值方法

    //遍历sqspb类 成员为String类型 属性为空的全部替换为"/" Field[] fields = sqspb.getClass().getDeclaredFields() ...

  4. java中遍历实体类,获取属性名和属性值

    方式一(实体类): //java中遍历实体类,获取属性名和属性值public static void testReflect(Object model) throws Exception{for (F ...

  5. java遍历一个类的属性名,java遍历对象属性

    java对象动态添加属性,Class对象和Java反射机制,java遍历对象属性,js对象动态添加属性 java 对象动态添加属性,Class对象和Java反射机制,java遍历对象属性,js对象动态 ...

  6. 类选择器选择非唯一属性无法精确取值的问题

    类选择器选择非唯一属性无法精确取值的问题 一.总结 一句话总结:因为做的操作并不是精确选取,因为执行了两次选择器,所以肯定不对啊. 二.类选择器选择非唯一属性无法精确取值的问题 1.截图 2.代码 1 ...

  7. 定义一个Traingle类用来刻画“三角形”,要求:Trangle类具有类型为double的三个边以及周长、面积属性,具有一个boolean型的属性,该属性的值为true时代表三个边属性能构成一个三角

    定义一个Traingle类用来刻画"三角形",要求:Trangle类具有类型为double的三个边以及周长.面积属性,具有一个boolean型的属性,该属性的值为true时代表三个 ...

  8. jQuery属性遍历、HTML操作

    jQuery 拥有可操作 HTML 元素和属性的强大方法. jQuery 遍历函数 jQuery 遍历函数包括了用于筛选.查找和串联元素的方法.    .add() 将元素添加到匹配元素的集合中. . ...

  9. Python 类—类属性(私有属性、公有属性、实例属性、局部变量)类方法(实例方法、静态方法)

    1. 创建类 类是对某个对象的定义,它包含有关对象动作方式的信息,包括它的名称.方法.属性和事件.类不存在于内存中,因此它本身并不是对象.当程序运行需要引用类的代码时,就会在内存中创建一个类的新实例, ...

最新文章

  1. [置顶] Android输入输出系统之TouchEvent流程
  2. IO-1(Java IO、File类)
  3. flash 语法 入门
  4. 什么是 Angular 的多级注入器
  5. 我大学期间看的好书推荐
  6. memcache的学习路线图
  7. 1756冗余_AB冗余模块1756-RM
  8. linux mutex 数量上限,互斥量mutex
  9. Android 侧边栏快速索引(点击索引、滑动索引),通讯录样式
  10. html转义字符箭头,HTML特殊字符显示(常用到的特殊符号,箭头相关,数学相关,标点,符号相关等)...
  11. 一键重装系统后蓝屏怎么修复
  12. TypeError: torch.FloatTensor is not a Module subclass
  13. 国科大学习资料--人工智能原理与算法-第十四次作业解析(学长整理)
  14. 使用计算机的安全事项,电脑安全使用注意事项
  15. CC3200——中断优先级
  16. Openshift 学习一(搭建Openshift环境)
  17. IOS 内购IAP 自动订阅收据验证返回结构体
  18. php常用的数组相关的函数及面向对象
  19. 光标怎么设置sap_设置placeholder光标
  20. WWW2020 GNN的一些总结 PPT

热门文章

  1. python学习-字符串格式化
  2. 安卓手机管理器_电脑文件快速搜索有everything,那手机呢?
  3. java home not set_Error: JAVA_HOME is not set and could not be found.
  4. python soup提取叶子标签_python 利用beautifulSoup提取页面多个标签的文本内容
  5. msgpack pack php,msgpack_pack和redis的诡异事
  6. 他从零开始学Python,25岁拥有480000粉丝:成功就靠这3点!
  7. java 对象调用_java 对象调用
  8. 用友t3服务器文件丢失,用友T3软件在T3用友通标准版恢复账套时在备份的文件中找不到要恢复的文件,如何解决?-用友T3...
  9. java 安全库_国家信息安全漏洞库
  10. vue项目开发实战案例_Vue、Spring Boot开发小而完整的Web前后端分离项目实战02