///



/// 得到一个对象实体 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. elasticsearch负载均衡节点——客户端节点 node.master: false node.data: false 其他配置和master 数据节点一样

    elasticSearch的配置文件中有2个参数:node.master和node.data.这两个参 数搭配使用时,能够帮助提供服务器性能. 数据节点node.master: false node. ...

  2. 漂亮的Html5网站

    http://www.mrdoob.com/projects/chromeexperiments/ball-pool/

  3. Ubuntu的root用户问题

    在Ubuntu中系统是默认禁止root用户登入操作,要使用超级用户可以加sudo 例: sudo chown book:book /work -R 或者切换到root su  root passwor ...

  4. Azure VM Scalable Sets -- 适用IAAS架构

    1. 选择Virtual Machine scale set2. 选择resource manager(或创建最新)3. 基本信息配置4. 配置scale的参数(可伸缩的balance模型):VM最小 ...

  5. for-in和for 循环 的区别

    以前早就知道,for...in 语句用于对数组或者对象的属性进行循环操作,而for循环是对数组的元素进行循环,而不能引用于非数组对象, 但咱在js项目里,遇到循环,不管是数组还是对象,经常使用for- ...

  6. 浅谈java使用指定字符集编码,以及常见的字符集

    问题的引入:在InputStreamReader(OutputStreamWriter)的构造方法中,有指定字符集编码,那么什么是字符集?有哪些常用的字符集?怎么用字符集进行编码? 一   什么是字符 ...

  7. HDU - 3374:String Problem (最小表示法模板题)

    Give you a string with length N, you can generate N strings by left shifts. For example let consider ...

  8. CodeForces - 622F:The Sum of the k-th Powers (拉格朗日插值法求自然数幂和)

    There are well-known formulas: , , . Also mathematicians found similar formulas for higher degrees. ...

  9. HihoCoder - 1615矩阵游戏II(贪心)

    矩阵游戏II 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 给定一个NxN的整数矩阵,小Hi每次操作可以选择两列,将这两列中的所有数变成它的相反数. 小Hi可以进行任意 ...

  10. CTF学习资料总结

    网络攻防大作业学习方向思路 一直对CTF比赛有参与的兴趣,但由于课程比较多,一直没有足够的时间系统的去了解与训练.所以我想利用接下来的几周时间对CTF比赛经行练习.并找到自己所擅长或感兴趣的方向深入研 ...