一、 反射
什么是反射?
简单点吧,反射就是在运行时动态获 取对象信息的方法,比如运行时知道对象有哪些属性,方法,委托等等等等。
反射有什么用呢?
反射不但让你在运行是获取对象的信息,还提 供运行时动态调用对象方法以及动态设置、获取属性等的能力。
反射在 ORM中有什么用呢?
我这里所讨论的ORM实现是通过自定义Attribute的方 式进行映射规则的描述的。但是我们并不知道具体哪个对象需要对应哪个表,并 且这些对象是独立于我们的ORM框架的,所以我们只能通过自定义Attribute来定 义映射规则,然后通过反射来动态获取这些映射规则。
反射的实现:
下面我们就以简单的获取对象的属性值的方式来做讨论,假设我们有类 Person,其中有3个属性Name、Age,Sex。我们通过反射的方法来动态获取 Person的对象的这三个属性的值。
public class Person
{
private string _Name;
private int _Age;
private string _Sex;
public string Name
{
get { return this._Name; }
set { this._Name = value; }
}
public int Age
{
get { return this._Age; }
set { this._Age = value; }
}
public string Sex
{
get { return this._Sex; }
set { this._Sex = value; }
}
}
时间: 2025-01-30 15:46:51