首页 / 软件开发 / C# / C#基础系列:实现自己的ORM(反射以及Attribute在ORM中的应用)
C#基础系列:实现自己的ORM(反射以及Attribute在ORM中的应用)2011-05-29 csdn博客 老田一、 反射什么是反射?简单点吧,反射就是在运行时动态获 取对象信息的方法,比如运行时知道对象有哪些属性,方法,委托等等等等。反射有什么用呢?反射不但让你在运行是获取对象的信息,还提 供运行时动态调用对象方法以及动态设置、获取属性等的能力。反射在 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; }
}
}