运用反射给实体赋值 - 中国WEB开发者网络 (http://www.webasp.net) -- 技术教程 (http://www.webasp.net/article/) --- 运用反射给实体赋值 (http://www.webasp.net/article/29/28084.htm) |
| -- 作者:未知 -- 发布日期: 2007-01-08 |
在系统开发过程中,有一些代码是必须反复 写的.比如实体的赋值过程(不用实体的免看). Eg: XXX.xxx=XXX 虽然可以通过codesmith来生成赋值,但是免不了代码冗长.如果是根据数据库生成的话,我们还要删除非必要的属性.而且过分依赖数据库. 特别是当你需要不同实体之间进行相同属性拷贝时,你必须一个属性一个属性赋值.实在太烦了. 我在做个java项目时无意发现了一个PropertyUtils类.就是用来属性复制的类,探究原理之后.发现其实.net里也是同样可以实现的. .net的反射就是实现的办法. using System.Reflection; /// <summary> } 实际上可以只传两个Type进来也可以的. 但是这个有个问题,就是当两个实体的同名属性类型不匹配时,会抛意外.我这个只是个例子,没有try出来. 基本原理就是这样子.呵呵.我的代码风格一般,估计看坏大家的眼睛了. 我自己做了个类似Nhibernate的数据绑定(暂时支持单表),完善ing.呵呵有空再切磋咯 如果有什么问题,欢迎大家指正 |
| webasp.net |