///



/// 得到一个对象实体 DataReader方式

///

///

/// 成功返回对象模型,失败返回null

public DotNet.Model.Base_Department GetModelUseDR(long Id)

{

		StringBuilder strSql=new StringBuilder();
strSql.Append("Select Top 1 Id,DepartmentName,NetCount,Remarks,CreatedOn,IsPublic,IsLock,SavedOn,LockVersion,Operator_Id From Base_Department ");
strSql.Append(" Where Id=@Id ");
SqlParameter[] parameters = {
new SqlParameter("@Id", SqlDbType.BigInt,8)};
parameters[0].Value = Id;
DotNet.Model.Base_Department model=new DotNet.Model.Base_Department();
SqlDataReader reader = DbHelperSQL.ExecuteReader(strSql.ToString(),parameters);
if(reader.Read())
{
model.Id = reader.GetInt64(reader.GetOrdinal("Id"));
model.DepartmentName = reader.GetString(reader.GetOrdinal("DepartmentName"));
model.NetCount = reader.GetInt32(reader.GetOrdinal("NetCount"));
model.Remarks = reader.GetString(reader.GetOrdinal("Remarks"));
model.CreatedOn = reader.GetDateTime(reader.GetOrdinal("CreatedOn"));
model.IsPublic = reader.GetBoolean(reader.GetOrdinal("IsPublic"));
model.IsLock = reader.GetBoolean(reader.GetOrdinal("IsLock"));
model.SavedOn = reader.GetDateTime(reader.GetOrdinal("SavedOn"));
model.LockVersion = reader.GetInt32(reader.GetOrdinal("LockVersion"));
model.Operator_Id = reader.GetInt64(reader.GetOrdinal("Operator_Id"));
reader.Close();
return model;
}
else
{
reader.Close();
return null;
}
} /// <summary>
/// 获得数据列表List<>,DataReader 使用参数的
/// </summary>
/// <param name="strWhere">条件</param>
/// <param name="ht">HashTable,保存参数名及参数对应的值</param>
/// <returns>List<DotNet.Model.Base_Department></returns>
/// 使用方法:string str = "id=@id";Hashtable ht = new Hashtable();ht.Add("@id", 10);
public List<DotNet.Model.Base_Department> GetListUseDataReader(string strWhere, Hashtable ht=null)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("Select Id,DepartmentName,NetCount,Remarks,CreatedOn,IsPublic,IsLock,SavedOn,LockVersion,Operator_Id from Base_Department");
if(strWhere.Trim().Length!=0)
{
strSql.Append(" Where " + strWhere.Trim());
}
//获取DataReader
SqlDataReader reader; //组织参数
if (ht != null && ht.Count > 0)
{
SqlParameter[] parameters = new SqlParameter[ht.Count];
int i = 0;
foreach (DictionaryEntry dc in ht)
{
parameters[i] = new SqlParameter() ;
parameters[i].ParameterName = dc.Key.ToString();
parameters[i].Value = dc.Value;
i++;
}
reader = DbHelperSQL.ExecuteReader(strSql.ToString(), parameters);
}
else
reader = DbHelperSQL.ExecuteReader(strSql.ToString());
if (reader.HasRows)
{
List<DotNet.Model.Base_Department> list = new List<DotNet.Model.Base_Department>();
while (reader.Read())
{
DotNet.Model.Base_Department model = new DotNet.Model.Base_Department();
model.Id = reader.GetInt64(reader.GetOrdinal("Id"));
model.DepartmentName = reader.GetString(reader.GetOrdinal("DepartmentName"));
model.NetCount = reader.GetInt32(reader.GetOrdinal("NetCount"));
model.Remarks = reader.GetString(reader.GetOrdinal("Remarks"));
model.CreatedOn = reader.GetDateTime(reader.GetOrdinal("CreatedOn"));
model.IsPublic = reader.GetBoolean(reader.GetOrdinal("IsPublic"));
model.IsLock = reader.GetBoolean(reader.GetOrdinal("IsLock"));
model.SavedOn = reader.GetDateTime(reader.GetOrdinal("SavedOn"));
model.LockVersion = reader.GetInt32(reader.GetOrdinal("LockVersion"));
model.Operator_Id = reader.GetInt64(reader.GetOrdinal("Operator_Id"));
list.Add(model);
}
reader.Close();
return list;
}
else
{
reader.Close();
return null;
}
}

DataReader方式 获取数据的更多相关文章

  1. DataReader方式 获取数据的操作

    一.使用DataReader读取为对象List /// <summary> /// 获得数据列表List<>,DataReader 使用参数的 /// </summary ...

  2. 关于 ThinkPHP5 使用 getBy 字段名方式获取数据

    关于 ThinkPHP5 使用 getBy 字段名方式获取数据 有小伙半说怎么全文搜索都没有搜索到 getByName 之类的函数. 其实是在这里.

  3. ie浏览器下get方式获取数据无效问题

    在ie浏览器用get方式获取数据时因为发送得到参数地址都是一样的,所以浏览器会优先从缓存获取数据,而不去服务器请求数据,post由于参数不同所以不会影响. 解决方法: 1.  Internet选项-- ...

  4. JAVA通过HTTP方式获取数据

    测试获取免费天气数据接口:http://www.weather.com.cn/data/sk/101190408.html URL数据如下图: 代码部分: package https; import ...

  5. Qt.网络开发-通过http的get方式获取数据

    Qt 是一个跨平台的 C++图形用户界面库,由挪威 TrollTech 公司于1995年底出品. 它是个跨平台的C++图形开发平台 我们在这章中可以学习简单的网络数据获取并显示的内容 本文基于Qt C ...

  6. Hibernate 以流的方式获取数据

    hibernateQuery.setFetchSize(Integer.MIN_VALUE); results = hibernateQuery.scroll(ScrollMode.FORWARD_O ...

  7. 8 Hbase get方式获取数据

    package com.hikvision.hbase.vertify.test; import org.apache.hadoop.conf.Configuration; import org.ap ...

  8. Request三种获取数据的方式

    今天在做ajax请求后台代码时,发现ajax的方法都对,但就是请求不了后台代码,后来在同事帮助下才发现前台定义了两个相同参数导致请求出错. 下面记录一下request三种获取数据的方式: 1. Req ...

  9. PDO获取数据的方法fetch()、fetchAll()、setFetchMode()、bindColumn()

    PDO的数据获取方法与其他数据库扩展都非常类似,只要成功执行SELECT查询,都会有结果集对象产生.不管是使用PDO对象中的query()方法,还是使用prepare()和execute()等方法结合 ...

随机推荐

  1. notepad++去空格空行技巧

    选择视图显示所有字符,替换成空的就行

  2. LeetCode OJ:Ugly Number(丑数)

    Write a program to check whether a given number is an ugly number. Ugly numbers are positive numbers ...

  3. Sqlite/ FMDB

    Sqlite 1. Sqlite数据库 > 数据库? 按数据结构来组织,存储和管理数据的仓库. > 关系型数据库:使用二维表及其之间的联系组织成一个数据组织. 关系:可以理解为一张二维表, ...

  4. javaScript-条件语句优化

    1.多重判断时使用 Array.includes test = (fruit: string) => { if (fruit == 'apple' || fruit == 'strawberry ...

  5. mysql int(3)与int(11)的区别

    总结,int(M) zerofill,加上zerofill后M才表现出有点点效果,比如 int(3) zerofill,你插入到数据库里的是10,则实际插入为010,也就是在前面补充加了一个0.如果i ...

  6. 【SQL查询】模糊查询_like

    [格式]:SELECT 字段 FROM 表 WHERE 某字段 Like 条件 [说明]: 1. %表示任意0个或多个字符,可匹配任意类型和长度的字符. 2. _ 表示任意单个字符.匹配单个任意字符. ...

  7. BAT级别对照表

  8. dojo chart生成函数

    写了一个函数,就是通过传递参数,生成图表,代码如下: /** * created by LZUGIS * @param container * @param type * @param data * ...

  9. AS3里面的错误代码

    ActionScript 3 出现2048安全策略服务,一种原因是因为843端口下发策略文件有问题,另一种原因是Socket端口有问题,可以用telnet来测试. 其它AS3错误代码的意义可以在官网文 ...

  10. 旧书重温:0day2【10】第五章 堆溢出利用2

    好久没有发帖子啦!最近一直很忙!但是还是抽空学习啦下! 前段时间匆匆忙忙的把0day2上的堆溢出实验做啦! 可能当时太浮躁啦,很多细节没注意!结果:实验结果很不满意!所以就有啦这一篇!! 上一篇是发布 ...