网站首页
网站导航
Ctrl+D收藏
首 页
代码段
源码包
文档库
工具箱
代码语言
.
CSharp
.
JS
Java
Asp.Net
C
MSSQL
PHP
Css
PLSQL
Python
Shell
EBS
ASP
Perl
ObjC
VB.Net
VBS
MYSQL
GO
Delphi
AS
DB2
Domino
Rails
ActionScript
Scala
代码分类
文件
系统
字符串
数据库
网络相关
图形/GUI
多媒体
算法
游戏
Jquery
Extjs
Android
HTML5
菜单
网页交互
WinForm
控件
企业应用
安全与加密
脚本/批处理
开放平台
其它
【
C#
】
利用反射动态给实体类对象赋值
作者:
筱雨
/ 发布于
2016/10/19
/
421
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using MvcApplication2.Models; using DataAccess; using System.Configuration; using System.Data; using System.Data.SqlClient; using System.Reflection; namespace MvcApplication2.Controllers { /// <summary> /// 将datatable装入指定类型的集合 /// </summary> /// <typeparam name="T"></typeparam> public class GenericList<T>:List<T> { public GenericList(DataTable dt, string f) { System.Type tt = System.Type.GetType(f);//获取指定名称的类型 object ff = Activator.CreateInstance(tt, null);//创建指定类型实例 PropertyInfo[] fields = ff.GetType().GetProperties();//获取指定对象的所有公共属性 foreach (DataRow dr in dt.Rows) { object obj = Activator.CreateInstance(tt, null); foreach (DataColumn dc in dt.Columns) { foreach (PropertyInfo t in fields) { if (dc.ColumnName == t.Name) { t.SetValue(obj, dr[dc.ColumnName], null);//给对象赋值 continue; } } } this.Add((T)obj);//将对象填充到list集合 } } } } //////////////////////实体类 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.ComponentModel; using System.ComponentModel.DataAnnotations; namespace MvcApplication2.Models { [MetadataType(typeof(EmployeeData))] public partial class Employee { public class EmployeeData { [DisplayName("用户ID")] public int ID { set; get; } [DisplayName("姓名")] [Required(ErrorMessage = "用户名不允许为空")] [StringLength(50, ErrorMessage = "用户名长度必须小于50个字符")] public string Uname { set; get; } [DisplayName("性别")] public bool Sex { set; get; } [DisplayName("出生日期")] [Required(ErrorMessage = "出生日期不允许为空")] public DateTime Birthday { set; get; } [DisplayName("是否婚配")] public bool IsHp { set; get; } } } } //////////////////调用 GenericList<Employee> list1 = new GenericList<Employee>(dt, "MvcApplication2.Models.Employee");//调用 return View(list1);
评论列表
本站所提供的代码,版权归原作者所有,若有侵犯作者版权,请与我们联系,我们将立即删除或修改。谢谢!
本站所有代码发布及提供者。
试试其它关键字
同语言下
.
C#动态修改文件夹名称(FSO实现,不移动文件)
.
c# 移动文件或文件夹
.
c#图片添加水印
.
网站后台修改图片尺寸代码
.
处理大图片在缩略图时的展示
.
实现对图片上传的接收
.
去除字符串中的空格,回车,换行符转变成‘;’在按‘
.
按照回车换行符分割字符串
.
文件MD5码 比较,检测文件是否一样
.
计算每周和每月固定日期
可能有用的
.
C#动态修改文件夹名称(FSO实现,不移动文件)
.
c# 移动文件或文件夹
.
c#图片添加水印
.
网站后台修改图片尺寸代码
.
处理大图片在缩略图时的展示
.
实现对图片上传的接收
.
去除字符串中的空格,回车,换行符转变成‘;’在按‘
.
按照回车换行符分割字符串
.
文件MD5码 比较,检测文件是否一样
.
计算每周和每月固定日期
筱雨
贡献的其它代码
(
28
)
.
查看存储过程修改时间,最近执行时间
.
json下钻函数,解决多层嵌套问题
.
向上公告走马灯
.
JAVA发送HttpClient请求及接收请求结果过程
.
根据图片在ftp路径获取InputStream流
.
断点续传(springMvc),可支持html5在线播放
.
IE提交表单记录历史,点击返回信息仍在。
.
用SQOOP从SQLSERVER导入数据到(HDFS,HIVE,HBASE)
.
泛型KMP算法
.
iframe框架根据内容自动伸缩高度
地图
本站
我们
服务
版权
联系
回馈
博客