c# 泛型编程典型应用 ModelConvertHelper
来源:互联网 发布:容错算法 编辑:程序博客网 时间:2024/05/20 16:35
通用类,可以把DataTable转换为任何模型。此代码为网上搜集,比较好用,所以贴出来了。
using System;using System.Collections.Generic;using System.Text;using System.Data;using System.Reflection;namespace Flexzoo.Data{ /// <summary> /// 实体转换辅助类 /// </summary> public class ModelConvertHelper<T> where T : new() { public static IList<T> ConvertToModel(DataTable dt) { // 定义集合 IList<T> ts = new List<T>(); // 获得此模型的类型 Type type = typeof(T); string tempName = ""; foreach (DataRow dr in dt.Rows) { T t = new T(); // 获得此模型的公共属性 PropertyInfo[] propertys = t.GetType().GetProperties(); foreach (PropertyInfo pi in propertys) { tempName = pi.Name; // 检查DataTable是否包含此列 if (dt.Columns.Contains(tempName)) { // 判断此属性是否有Setter if (!pi.CanWrite) continue; object value = dr[tempName]; if (value != DBNull.Value) pi.SetValue(t, value, null); } } ts.Add(t); } return ts; } }}
- c# 泛型编程典型应用 ModelConvertHelper
- 典型应用
- 名企面试官精讲典型编程题之C#篇
- 名企面试官精讲典型编程题之C#篇
- Linux编程学习——getopt典型应用
- C#泛型编程
- C#泛型编程
- C#泛型编程
- c# 泛型编程
- c# 泛型编程
- C#泛型编程
- C#泛型编程
- C# 泛型编程
- C#泛型编程
- C# 泛型编程
- C#泛型编程
- C#泛型编程
- C#泛型编程
- vi的使用方法
- 选择屏幕加按钮
- poj1659 - Frogs' Neighborhood
- Jquery操作select
- python调用c
- c# 泛型编程典型应用 ModelConvertHelper
- Lucene学习总结-索引文件结构
- 通过http代理,下载git协议的repo
- Oracle日期函数/字符函数/数字函数/转换函数/聚合函数
- JavaScript call()和apply() 的一些理解
- JAVA文件操作类和文件夹的操作(转帖)
- 不同浏览器对window.event的理解
- S3C2410驱动分析之触摸屏驱动
- Supermap5.3许可注册问题