[C#]dynamic+reflection=像public一样调用private类成员

在项目上写UT时,代码里面有大量的protected属性,需要被mock掉,但是因为是protected,不能被外部赋值,因此找到了用dynamic加反射的形式实现一个包装类,能够像调用public成员一样点吧点吧调用private成员

[C#]Attribute 与 反射

Attribute是C#的一种语言特性,用于为各种实体(class,field,property)附加一些说明性信息, 并且可以在运行时环境中检索这些信息(通过反射)。这篇文章介绍了如何去声明和使用一个attribute,并且介绍了反射的基本知识,以及如何运用反射来读取attribute的信息。