读取数据库的数据并转换成List<>
一、在有帮助类DbHelperSQL的时候
1、下为其中返回SqlDataReader的方法
/// <summary>
/// 执行查询语句,返回SqlDataReader ( 注意:调用该方法后,一定要对SqlDataReader进行Close )
/// </summary>
/// <param name="strSQL">查询语句</param>
/// <returns>SqlDataReader</returns>
public static SqlDataReader ExecuteReader(string strSQL)
{
SqlConnection connection = new SqlConnection(connectionString);
SqlCommand cmd = new SqlCommand(strSQL, connection);
try
{
connection.Open();
SqlDataReader myReader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
return myReader;
}
catch (System.Data.SqlClient.SqlException e)
{
throw e;
} }
2、三层DAL层方法
/// <summary>
/// 把读出的数据转换成List
/// </summary>
public List<int> GetUserList(int hid)
{
string sql = " select V_UserID from UserVoters where V_HeadlineID=" + hid + "";
SqlDataReader dr = DbHelperSQL.ExecuteReader(sql);
List<UserVotersModel> plist = new List<UserVotersModel>();
while (dr.Read())
{
UserVotersModel uvm = new UserVotersModel();
uvm.V_UserID = int.Parse(dr["V_UserID"].ToString());
plist.Add(uvm);
}
List<int> list = new List<int>();
for (int i = ; i < plist.Count; i++)
{
list.Add(int.Parse(plist[i].V_UserID.ToString()));
}
return list;
}
3、把List当参数放到sql语句里的方法
/// <summary>
/// 获得未投票用户列表
/// </summary>
public DataSet GetNoPersonList(List<int> list)
{
StringBuilder strSql = new StringBuilder();
if (list != null && list.Count > )
{
string listMes = string.Empty;
foreach (int str in list)
{
listMes += "'" + str + "',";
}
strSql.Append("select U_Uid,U_Name,U_Sex,U_Phone,U_QQ from dbo.UsersInfo where U_ID not in(" + listMes.TrimEnd(',') + ") and U_Level=4 and U_Name='' ORDER BY U_ID DESC ");
return DbHelperSQL.Query(strSql.ToString());
}
else
{
strSql.Append(" select U_Uid,U_Name,U_Sex,U_Phone,U_QQ from dbo.UsersInfo where U_Level=4 and U_Name='' ORDER BY U_ID DESC ");
return DbHelperSQL.Query(strSql.ToString());
}
}
二、没有帮助类直接读取数据库
/// <summary>
/// 读取数据库的信息,并转换成List
/// </summary>
public List<MailData> GetExpiredLicense()
{
string connectionString = "Data Source=01;Initial Catalog=Music;Persist Security Info=True;User ID=Musicname;Password=123456";
SqlConnection conn = new SqlConnection(connectionString);
conn.Open();
string sql = string.Format( @" select * from Tale" ); SqlDataAdapter da = new SqlDataAdapter(sql, connectionString);
DataSet ds = new DataSet();
da.Fill(ds);
List<MailData> list = new List<MailData>(); //MailData为要查询表的实体类
foreach (DataRow item in ds.Tables[].Rows)
{
list.Add(MailData.ConvertRow(item));
}
return list;
}
读取数据库的数据并转换成List<>的更多相关文章
- 利用泛型和反射,管理配置文件,把Model转换成数据行,并把数据行转换成Model
利用泛型和反射,管理配置文件,把Model转换成数据行,并把数据行转换成Model 使用场景:网站配置项目,为了便于管理,网站有几个Model类来管理配置文件, 比如ConfigWebsiteMo ...
- java中,字符串类型的时间数据怎样转换成date类型。
将字符串类型的时间转换成date类型可以使用SimpleDateFormat来转换,具体方法如下:1.定义一个字符串类型的时间:2.创建一个SimpleDateFormat对象并设置格式:3.最后使用 ...
- 使用Sql语句快速将数据表转换成实体类
开发过程中经常需要根据数据表编写对应的实体类,下面是使用sql语句快速将数据表转换成对应实体类的代码,使用时只需要将第一行'TableName'引号里面的字母换成具体的表名称就行了: declare ...
- Mysql一个非常有用的内置函数今天碰到要把MySQL数据库中的varchar转换成date类型进
Mysql一个非常有用的内置函数 今天碰到要把MySQL数据库中的varchar转换成date类型进行时间的比较和查询.在网上找了找,发现MySQL也跟其他数据库一样有自己内置的转换函数:str_to ...
- 获取minist数据并转换成lmdb
caffe本身是没有数据集的,但在data目录下有获取数据的一些脚本.MNIST,一个经典的手写数字库,包含60000个训练样本和10000个测试样本,每个样本为28*28大小的黑白图片,手写数字为0 ...
- caffe 图片数据的转换成lmdb和数据集均值(转)
转自网站: http://blog.csdn.net/muyiyushan/article/details/70578077 1.准备数据 使用dog/cat数据集,在训练项目根目录下分别建立trai ...
- 数据表转换成json(DatatableToJson)
#region 转换Table为JSON数据 /// <summary> /// 转换Table为JSON数据 /// </summary> /// <param nam ...
- Spark2 加载保存文件,数据文件转换成数据框dataframe
hadoop fs -put /home/wangxiao/data/ml/Affairs.csv /datafile/wangxiao/ hadoop fs -ls -R /datafiledrwx ...
- SQL Server ->> 利用CONVERT/STR/FORMAT函数把浮点型数据格式化/转换成字符串
在SQL Server下想把数字(包括浮点型和整型)转换成字符串,保留数据原本的样子或者根据需要转换成另外指定的格式可能就不仅仅是一条CAST(XXXX AS NVARCHAR)这么简单的事情了. 无 ...
随机推荐
- error C3867: “std::basic_string<char,std::char_traits<char>,std::allocator<char>>::c_str”: 函数调用缺少参数列表;请使用“&std::basic_string<char,std::char_traits<char>,std::allocator<char>>::c_str”创建指向成员的指针
这个问题找了很多没有找到满意的答案.仔细看了一下,是使用了c_str的问题. 我直接把使用string.c_str的地方使用char*代替即解决问题.
- mkdir和_mkdir的区别
没有下划线的位不符合ISO c++ 标准的写法,标准要求带下划线的标准,没有下划线的是为了兼容以前的版本.
- docker容器的常见操作
进入容器 docker exec -it 12a022ee8127 /bin/bash 交互模式进入容器 docker exec -it 12a022ee8127 ip a 查看容器的ip等信息 批量 ...
- python列表中enumerate和zip函数用法
enumerate: 定义:enumerate() 函数用于将一个可遍历的数据对象(如列表.元组或字符串)组合为一个索引序列,同时列出数据和数据下标 例子: list1 =[89,98,00,75,6 ...
- 关于第一次将STM32与电脑连接情况
安装了Keil(ARM)版本之后,不管是自己编程,还是配套的程序运行.我们都想把它下载到STM32芯片里面,在板子上运行.这里介绍几种方法. 1.用J-LINK下载调试. 这个工具,可以直接点击kei ...
- [转载]A星寻路算法介绍
转载自:http://www.raywenderlich.com/zh-hans/21503/a%E6%98%9F%E5%AF%BB%E8%B7%AF%E7%AE%97%E6%B3%95%E4%BB% ...
- 5.Struts2框架中的ServletAPI如何获取
1.完全解耦合的方式 如果使用该种方式,Struts2框架中提供了一个类,ActionContext类,该类中提供一些方法,通过方法获取Servlet的API 一些常用的方法如下 * static A ...
- pandas的read_csv踩到的坑
read_csv要注意,如果没有设置index_col时,读出来的会在索引上方加上Unnamed:0.可以通过设置index_col来解决这个问题. import pandas as pd impor ...
- jenkins的安装和启用
1.下载Jenkins:下载地址:https://jenkins.io/zh/download/ 2.将Jenkins.war包上传到Tomcat的webapps目录下,本次的目录是/usr/loca ...
- NX二次开发-UFUN获取工程图详细信息UF_DRAW_ask_drawing_info
NX9+VS2012 #include <uf.h> #include <uf_draw.h> #include <uf_part.h> UF_initialize ...