.NET 实体转换辅助类

/// <summary>
    /// 实体转换辅助类
    /// </summary>
    public class ModelConvertHelper<T> where  T : new()
    {
        public static IList<T> ConvertToModelList(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;
        }

  

原文地址:https://www.cnblogs.com/Xanthus/p/9589577.html

时间: 2024-11-13 09:49:37

.NET 实体转换辅助类的相关文章

C#实体转换

using System; using System.Collections.Generic; using System.Data; using System.Data.Common; using System.Reflection; /// <summary> /// 实体阅读器类,可以从DataTable中或者DbDataReader的实例中将数据转换成对应的示例 /// 作者:周公 /// 日期:2011-07-17 /// 修改日期:2011-07-21 /// 博客地址:http:/

HBaseConvetorUtil 实体转换工具类

HBaseConvetorUtil 实体转换工具类 public class HBaseConvetorUtil { /** * @Title: convetor * @Description: 传入hbase返回结果值,返回实例集合 * @param * @return * @throws */ public static <T> List<T>convetor(Class<T> cla,ResultScanner resultScanner) throws Exce

HBaseConvetorUtil 实体转换工具

HBaseConvetorUtil 实体转换工具类 public class HBaseConvetorUtil { /** * @Title: convetor * @Description: 传入hbase返回结果值.返回实例集合 * @param * @return * @throws */ public static <T> List<T>convetor(Class<T> cla,ResultScanner resultScanner) throws Exce

html实体转换

摘要: 在 HTML 中,某些字符是预留的.在 HTML 中不能使用小于号(<)和大于号(>),这是因为浏览器会误认为它们是标签.如果希望正确地显示预留字符,我们必须在 HTML 源代码中使用字符实体.如需显示小于号,我们必须这样写:< 或 < HTML 中的常用字符实体是不间断空格( ).浏览器总是会截短 HTML 页面中的空格.如果您在文本中写 10 个空格,在显示该页面之前,浏览器会删除它们中的 9 个.如需在页面中增加空格的数量,您需要使用   字符实体. 实体列表: 下面

IFile、File与实体转换

/** * 根据物理实体文件在开发工程中创建实体文件 */ @Override public void getEntityFilesByErFile(IFile erfile, IFolder entityFolder) { if (null == erfile || null == entityFolder) { ERDiagramActivator.showErrorDialog("ER图表为空!"); return; } // 通过file反编译获取diagram,再创建实体,通

Jquery EasyUI Tree树形结构的Java实现(实体转换VO)

前一阵做的OA项目,有一个是组织架构的树,因为是分开做的,我做的是Controller和页面,其他组做的Service和Dao,因为之前一直没有商量页面用什么框架做比较好,导致,Dao层取出来的数据都不是Easyui Tree所能识别的,其实后台返回的也是树形的结构,但是他们返回来的 **id,而不是Easyui Tree所能识别的id:他们返回的是name,,而不是Easyui Tree所能识别的text,他们返回的是****,,而不是Easyui Tree所能识别的children,因为别人

这两天自己模仿写的一个Asp.Net的显示分页方法 附加实体转换和存储过程

之前自己一直用Aspnetpager控件来显示项目中的分页,但是每次都要拖一个aspnetpager的控件进去,感觉很不舒服,因为现在自己写的webform都不用服务器控件了,所以自己仿照aspnetpager写了一个精简实用的返回分页显示的html方法,其他话不说了,直接上代码. 分页显示信息的实体类:  public class Pager    {        private string _firstPageText;        /// <summary>        ///

Transformer-view java实体 转换视图 Lists.transform

自: https://blog.csdn.net/mnmlist/article/details/53870520 meta_ws 连接: https://github.com/kse-music/demo/blob/064663ac7251285745dc915dad4a6837f723538f/src/test/java/com/hiekn/demo/test/util/GuavaTest.java import com.google.common.base.Function; import

dt转实体

public class DtConvertToList<T> where T : new() { /// <summary> /// 实体转换辅助类 /// </summary> public static List<T> ConvertToModel(DataTable dt) { // 定义集合 List<T> ts = new List<T>(); // 获得此模型的类型 Type type = typeof(T); stri