利用反射保存数据

创建新表

DataTable dt = new DataTable();
        DataRow dr = dt.NewRow();
        Type t1 = typeof(UserTable);
        PropertyInfo[] pis = t1.GetProperties();
        foreach (var item in pis)
        {
            dt.Columns.Add(item.Name);
            dr[item.Name] = ((TextBox)this.FindControl(item.Name)).Text;
        }
                    
        dt.Rows.Add(dr);

        UserTable usertb = new UserTable();
        //Type t = usertb.GetType();

        foreach (DataRow drow in dt.Rows)
        {
           // PropertyInfo[] pinfo = t.GetProperties();

            foreach (PropertyInfo info in pis)
            {               
                if (drow[info.Name] == DBNull.Value)
                {
                    continue;
                }
                info.SetValue(usertb, drow[info.Name], null);
            }
        }

posted on 2012-03-30 14:47  李菲菲  阅读(178)  评论(0编辑  收藏  举报