比较多层架构查询功能的泛型接口(IList)和普通(dataset)实现
2012-03-09 11:36
447 查看
泛型接口 | 普通 | |
表现层 | string strWhere = "1=1 order by ID desc"; InfoMgr mgr = new InfoMgr(new InfoEntity()); IList<ViewInfoEntity> result = mgr.GetViewInfoSelf(strWhere); SmartGridView1.DataSource = result; SmartGridView1.DataBind(); | BLL.TblNewsClassMgr classmgr = new BLL.TblNewsClassMgr(); DataSet ds = classmgr.GetAll(); GridView1.DataSource = ds.Tables[0].DefaultView; GridView1.DataBind(); |
业务层 | public IList<ViewInfoEntity> GetViewInfoSelf(string strWhere) { ViewInfoService service = new ViewInfoService(new ViewInfoEntity()); return service.SelectViewInfo(strWhere); } | public DataSet GetAll() { return du.GetAll(); } |
数据层 | /// <summary> /// 自定义检索 /// </summary> /// <returns></returns> public IList<ViewInfoEntity> SelectViewInfo(string whereSqlString) { IList<ViewInfoEntity> result=new List<ViewInfoEntity>(); DAOBase dao = new ViewInfoDAO(entity); dao.WhereSQLString=whereSqlString; DataSet ret=dao.Select(); if (ret != null) { if (ret.Tables[0].Rows.Count > 0) { foreach(DataRow row in ret.Tables[0].Rows) { ViewInfoEntity _entity = new ViewInfoEntity(); if(row["ID"]!=null) { _entity.ID=int.Parse(row["ID"].ToString()); } _entity.ValidDate=System.DateTime.Parse(row["ValidDate"].ToString()); } } result.Add(_entity); } } } return result; } | public DataSet GetAll() { StringBuilder sql = new StringBuilder(); sql.Append("select * from Users"); return SQLHelper.GetList(sql.ToString(), "user"); } |
公共数据层 | /// <summary> /// 检索全部 /// </summary> /// <returns></returns> public DataSet Select() { DataSet result = null; try { result = SelectData(); } catch (HuaSi.ExceptionProcessor.CustomDAOException ex) { bool rethrow = ExceptionPolicy.HandleException(ex, "DBOperatePolicy"); if (rethrow) { throw; } } return result; } | /// <summary> /// 执行一个T-SQL查询,返回DataSet对象 /// </summary> /// <param name="query">查询的SQL语句</param> /// <param name="TableName">DataSet结果中的表名</param> /// <returns></returns> public static DataSet GetList(string query, string TableName) { InitConn(); SqlDataAdapter sda = new SqlDataAdapter(query, conn); DataSet ds = new DataSet(); sda.Fill(ds, TableName); CloseConn(); return ds; } |
private DataSet SelectData() { DataSet result = null; IDataAccessState state = new SelectState(this.tableName, this); result = (DataSet)state.Execute(); return result; } |
相关文章推荐
- 对象的比较与排序(三):实现IComparable<T>和IComparer<T>泛型接口
- 用Golang的接口查询快速实现Redis的延迟加载功能
- PHP--用万网的接口实现域名查询功能
- 【Phalcon实现高性能接口开发】使用Phalcon高性能PHP框架搭建API MVC架构之实现查询版本的接口
- 通用排序函数的功能实现(利用接口和委托实现泛型[通用]排序)
- 对象的比较与排序(三):实现IComparable<T>和IComparer<T>泛型接口
- 实现功能要求统计图书的总价,编写方法查询出在50元以上的所有图书,使用排序接口图书按照价格排序(升序排序)
- android使用ksoap2调用webservice接口实现电话号码查询功能
- PHP--用万网的接口实现域名查询功能
- Java编程之TreeSet排序两种解决方法(1)元素自身具备比较功能,元素需要实现Comparable接口覆盖compare(2)创建根据自定义Person类的name进行排序的Comparator
- PHP--用万网的接口实现域名查询功能
- 对象的比较与排序(三):实现IComparable<T>和IComparer<T>泛型接口(转)
- 比较器的使用,实现 Comparable接口,功能:实现对象的多条件比较,排序
- zabbix通过自动发现功能实现自动识别网络设备接口
- 实现函数功能对数组元素进行插入、删除、查询操作
- Python实现SQL查询功能示例
- 查询功能实现
- MySQL实现递归调用,查询组织架构树
- MySQL实现递归调用,查询组织架构树
- 利用泛型接口实现生成器