C#实现利用泛型将DataSet转为Model的方法
程序员文章站
2023-12-11 20:31:46
本文实例讲述了c#实现利用泛型将dataset转为model的方法。分享给大家供大家参考。具体如下:
因为网站需要用c#开发,习惯了java的泛型,所以看了一下c#下,也...
本文实例讲述了c#实现利用泛型将dataset转为model的方法。分享给大家供大家参考。具体如下:
因为网站需要用c#开发,习惯了java的泛型,所以看了一下c#下,也可以这样做,随便写了一个。
public static list<t> putallval<t>(t entity, dataset ds) where t : new() { list<t> lists = new list<t>(); if (ds.tables[0].rows.count > 0) { foreach (datarow row in ds.tables[0].rows) { lists.add(putval(new t(),row)); } } return lists; } public static t putval<t>(t entity, datarow row) where t : new() { //初始化 如果为null if (entity == null){ entity = new t(); } //得到类型 type type = typeof(t); //取得属性集合 propertyinfo[] pi = type.getproperties(); foreach (propertyinfo item in pi){ //给属性赋值 if (row[item.name] != null && row[item.name] != dbnull.value) { if (item.propertytype == typeof(system.nullable<system.datetime>)) { item.setvalue(entity, convert.todatetime(row[item.name].tostring()), null); } else { item.setvalue(entity, convert.changetype(row[item.name], item.propertytype), null); } } } return entity; }
希望本文所述对大家的c#程序设计有所帮助。