将DataReader转为DataTable?
展开全部
SqlConnection con = new SqlConnection("Server=111.111.111.111;DataBase=mybase;UID=sa;123");
SqlCommand com = new SqlCommand("select * from toolinfo", con);
SqlDataReader dr = com.ExecuteReader();
DataTable dt = new DataTable();
int fieldcout = dr.FieldCount;
if (dr.FieldCount > 0)
{
for (int i = 0; i < dr.FieldCount; i++)
{
DataColumn dc = new DataColumn(dr.GetName(i), dr.GetFieldType(i));
dt.Columns.Add(dc);
}
object[] rowobject = new object[dr.FieldCount];
while (dr.Read())
{
dr.GetValues(rowobject);
dt.LoadDataRow(rowobject, true);
}
}
dr.Close();
con.Close();
这个方法不会像DataTable的Load方法那样获取数据库中的各种限制
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-08-08
展开全部
用不着for循环
DataTable dt = new DataTable();
dt.Load(dr.Read());
DataTable dt = new DataTable();
dt.Load(dr.Read());
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
datarow dr= new datarow();
dr[0] =datareader[0];
.
.
.
datatable.add(dr);
用for循环或者while循环
dr[0] =datareader[0];
.
.
.
datatable.add(dr);
用for循环或者while循环
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询