C# 反射 操作列表类型属性

本文介绍对列表进行创建及赋值的反射操作

我们现在有TestA、TestB类,TestA中有TestB类型列表的属性List,如下:

下面通过反射,给TestA.List进行赋值,output的期望是 “1,2”

  1. 确定列表及泛型时,可以直接设置属性值

2.确定属性是列表,但不确定列表的泛型时,通过列表的Add方式进行设置值

List

如上,我们需要先创建一个空列表,对属性进行初始化。propertyInfo.PropertyType.GenericTypeArguments是列表的泛型类型

然后,获取列表的新增方法 newList.GetType().GetMethod(“Add”),将List

3.不确定属性是否列表,也不确定列表的泛型,可以如下处理:

如果AddValueToListProperty方法是设置属性值的通用方法,一般可以按上面的方式进行处理。

Original: https://www.cnblogs.com/kybs0/p/15112008.html
Author: 唐宋元明清2188
Title: C# 反射 操作列表类型属性

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/543103/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • springboot: mchange-commons-java-0.2.11.jar (系统找不到指定的文件)

    Springboot框架,引入C3P0,启动出现Bug The Class-Path manifest attribute in D:\develop\maven\reposito…

    Java 2023年5月29日
    064
  • 附001.Nginx location语法规则

    一 location规则 基本语法: location [=|~|~*|^~]/uri/{…} 修饰符释义: 对请求的url序列化。例如,对%xx等字符进行解码,去除u…

    Java 2023年5月30日
    079
  • Maven依赖包导入错误(IntelliJ IDEA):java.lang.OutOfMemoryError: GC overhead limit exceeded

    一、问题背景 最近用IntelliJ IDEA 打开一个老应用,一直加载依赖不成功,主POM中存在如下错误. java.lang.OutOfMemoryError:GC overh…

    Java 2023年5月29日
    062
  • Day16自定义异常

    package com.exception.demo02;//自定义的异常类public class MyException extends Exception{ //传递数字&g…

    Java 2023年6月5日
    078
  • 使用Gradle自动创建Java项目结构

    D:\N3verL4nd\Desktop\java>tree 卷 本地磁盘 的文件夹 PATH 列表 卷序列号为 00000200 0006:08B0 D:. ├─.grad…

    Java 2023年5月29日
    074
  • JAVA中“LIST泛型MAP根据某一个KEY去重

    JAVA中”LIST泛型MAP根据某一个KEY去重 Java中”List泛型Map根据某一个key去重,保留一个数据。利用jdk8stream()流实现去重…

    Java 2023年5月29日
    060
  • Java–使用多线程下载,断点续传技术原理(RandomAccessFile)

    一.基础知识 1.什么是线程?什么是进程?它们之间的关系? 可以参考之前的一篇文章:java核心知识点学习—-并发和并行的区别,进程和线程的区别,如何创建线程和线程的四…

    Java 2023年5月29日
    074
  • Dijkstra算法(三)之 Java详解

    迪杰斯特拉(Dijkstra)算法是典型最短路径算法,用于计算一个节点到其他节点的最短路径。它的主要特点是以起始点为中心向外层层扩展(广度优先搜索思想),直到扩展到终点为止。 基本…

    Java 2023年5月29日
    077
  • 实习第二周

    实习第八天 我陷入了一种假期结束要上班的前一天晚上,我就会非常焦虑。很担心上班的时候发生一些什么状况,假期的时候躺在床上就想如果现在在学校该多好,在自己熟悉的环境里,干什么都轻轻松…

    Java 2023年6月5日
    085
  • Hystrix 断路器

    分布式系统面临的问题:复杂分布式体式结构中的应用程序有数十个依赖关系,每个依赖关系在某些时候将不可避免的失败。 多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务…

    Java 2023年6月8日
    049
  • IO流文件复制

    用IO流实现文件复制 使用FileInputStream+FileOutputStream完成文件的拷贝 拷贝的过程是一边读一边写 使用以上的字节流拷贝文件的时候,文件的格式不限 …

    Java 2023年6月9日
    070
  • Java学习-087-自定义MANIFEST.MF 文件并打包生效

    在 src/main/resources 文件夹下创建 MANIFEST.MF 文件,文件内容如下所示: Created-By: 范丰平 Manifest-Version: 1.0…

    Java 2023年5月29日
    078
  • markdown首行缩进

    markdown 好像没有首行缩进的快捷键, 而使用tab键也没有用, 空格也最后也只会保留一个. 但 markdown 是支持 HTML 标签的, 就是说我们可以使用 style…

    Java 2023年6月7日
    0102
  • 好的每日站会,应该这么开 | 敏捷开发落地指南

    Original: https://www.cnblogs.com/yyds114/p/16198295.htmlAuthor: 云效DevOps平台Title: 好的每日站会,应…

    Java 2023年6月8日
    073
  • MySQL、Oracle元数据抽取分析

    最近接到个任务是抽取mysql和Oracle的元数据,大致就是在库里把库、schema、表、字段、分区、索引、主键等信息抽取出来,然后导成excel。 因为刚开始接触元数据,对这个…

    Java 2023年6月5日
    082
  • 数据库学习记录(四)

    1.union(可以将查询结果集相加) 案例:找出岗位是SALEMAN和MANAGE的员工 第一种:select ename,job from emp where job =&#8…

    Java 2023年6月7日
    057
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球