2008年5月4日

用字符串来访问对象的属性

摘要: 项目需要用字符串的形式来访问对象的属性,让我又怀念起"DataTable"了,像dt.Rows[0]["EmployeeID"]多爽啊。。。。不过现在.net3.5这么强大,Linq、Lambda Expressions可以方便地对List对象进行筛选、转换所以不应该倒退回DataTable了,既然对象没有这种用字符串型式访问属性的方法,那我们就帮它加上。 可是怎么加好呢?先定下调用方法吧,方法1:emp.GetProperty("EmployeeID"),方法2: Functions.GetProperty(Employee.GetType(),"EmployeeID"),二者之间我毫不犹豫选了前者,关于前者的实现方法我者先想到了继承,但是问题有很多,比如:类是单继承的,而且实现的时候GetProperty方法所在的父类必须要知道子类的类型,封装性不好,好在.net3.5提供了Extension Methods,下面我们就用它来实现这个需求吧,出于方便考虑,读方法的时候去掉了大小写敏感,但是这样会带来麻烦,比如Employee对象有"employeeid"和"Emp 阅读全文

posted @ 2008-05-04 03:51 古宁氧资 阅读(557) 评论(0) 推荐(0)

导航