using System.Data; using System.Reflection; using System.Collections; using System.Collections.Generic; using System; namespace BI.ERP.DAL { public class DataSet转换List { /// <summary> /// 泛型集合与DataSet互相转换 /// </summary> public class IListDataS…
一.泛型转DataSet /// <summary> /// 泛型集合转换DataSet /// </summary> /// <typeparam name="T"></typeparam> /// <param name="list">泛型集合</param> /// <returns></returns> /// public static DataSet ToDa…
1.DataSet装换为泛型集合(注意T实体的属性其字段类型与dataset字段类型一一对应) #region DataSet装换为泛型集合 /// <summary> /// 利用反射和泛型 /// </summary> /// <param name="dt"></param> /// <returns></returns> public static List<T> ConvertToList&l…
定义一个类: public class UserInfo    {        public System.Guid ID { get; set; } public string LoginName { get; set; } public string LoginPwd { get; set; }    } /// <summary> /// 获取UserInfo泛型集合 /// </summary> /// <param name="connStr"…
给DataTable添加列 string sql = "select * from cgpmb order by code"; DataTable dt = Bobole.Data.OracleDataRegester.GetListBySql(sql).Tables[]; dt.Columns.Add("PCode", typeof(string)); //假如数据库查询出来的DataTable没有你想要的列 Remove("")可以删除列 ;…
#region DataSet装换为泛型集合 /// <summary> /// 利用反射和泛型 /// </summary> /// <param name="dt"></param> /// <returns></returns> public static List<T> ConvertToList<T>(DataTable dt) { // 定义集合 List<T> ts…
/DataSet与泛型集合间的互相转换 //利用反射机制将DataTable的字段与自定义类型的公开属性互相赋值. //注意:从DataSet到IList<T>的转换,自定义类型的公开属性必须与DataTable中的字段名称 //一致,才能到达想要的结果.建议DataTable的定义从数据库来,自定义类型用O/R Mapping的方式获得.   //代码说明       /// <summary> /// 泛型集合与DataSet互相转换 /// </summary>…
最近在做WCF,因为是内部接口,很多地方直接用的弱类型返回(DataSet),这其实是一种非常不好的方式,最近将项目做了修改,将所有接口返回值都修改成强类型,这样可以减少很多与客户端开发人员的沟通,结构内容一目了然 很多时候,后台我们通过ADO.NET使用SQL语句查询出了想要的数据,这时如果直接把这个DataSet丢给客户端开发人员,会让他们一头雾水,并且维护扩展起来都很麻烦,所以想了一个办法,在服务端,首先我们把查询到的数据集转换成泛型集合,再返回给客户端,客户端可以直接使用,也可以再自行转…
坤哥见我昨天找了一段代码,如下面: 略微解释下,这段代码时D层查询结束后,将datatable查询到的结果赋值给实体对象的属性,然后返回实体的过程.坤哥看了之后问我,假设实体有500多个属性,难道也要这样一条一条的写吗?假设返回多个实体时怎么办?这时,我才意识到自己的代码时非常有问题的.原来设计的是每一个方法最多返回一个实体,可是当遇到查询到多条记录的时候,就又冒着破坏三层结构的事返回Datatable去了,真的是非常有问题啊. 怎么改.我脑海中一下子就浮现了老办法:数组+循环,用循环读条读取列…
开会的时候,师父说.我们在机房重构时,尽量不要用datatable作为返回值.改用泛型集合的方式,这样能够实现真正的面向对象. 通过查资料和同学交流,把这个问题给攻克了. 对于泛型集合.我也有了一些认识. 一.对泛型集合的认识 1.存在于System.Collection,Generic的命名空间中,在用的时候.须要引用 2.泛型是具有占位符(类型參数)的类,结构,接口和方法.就是说,在泛型集合中增加的数据必须符合指定的类型<T>,否则编译时就会报错. 以上为设计模式培训实习生的内容. 那泛型…