求c#大神解答tables老是报错,说缺少using指令集,这是一个zedgraph的数据源。
答案:4 悬赏:10
解决时间 2021-03-02 19:55
- 提问者网友:wodetian
- 2021-03-02 05:02
求c#大神解答tables老是报错,说缺少using指令集,这是一个zedgraph的数据源。
最佳答案
- 二级知识专家网友:我住北渡口
- 2021-03-02 05:50
你的dr是DataReader,又不是dataset,哪来的tables,应该是
OleDbConnection conn = new OleDbConnection(connectionString);
OleDbCommand cmd = new OleDbCommand("Select * from 土壤参数表 ", conn);
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
DataSet ds = new DataSet();
dr.Fill(ds);
for (int i = 0; i < 10; i++)
{
x = dr.Tables[0].rows[i][3].ToString();
追问:dr.Fill(ds);这句是什么意思?这个dr哪儿来的呀?
追答:dr写错了,上面应该是
DataSet ds = new DataSet();
da.Fill(ds);
for (int i = 0; i < 10; i++)
{
x = ds.Tables[0].rows[i][3].ToString();
Fill就是用DataAdapter向dataset中填充数据,一次fill填充一个表
OleDbConnection conn = new OleDbConnection(connectionString);
OleDbCommand cmd = new OleDbCommand("Select * from 土壤参数表 ", conn);
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
DataSet ds = new DataSet();
dr.Fill(ds);
for (int i = 0; i < 10; i++)
{
x = dr.Tables[0].rows[i][3].ToString();
追问:dr.Fill(ds);这句是什么意思?这个dr哪儿来的呀?
追答:dr写错了,上面应该是
DataSet ds = new DataSet();
da.Fill(ds);
for (int i = 0; i < 10; i++)
{
x = ds.Tables[0].rows[i][3].ToString();
Fill就是用DataAdapter向dataset中填充数据,一次fill填充一个表
全部回答
- 1楼网友:渊鱼
- 2021-03-02 06:52
OleDbDataReader有Table吗? 你完全用错了! 你如果用Table 就用DataAdapter填充 DataSet 用DataSet的Table 去读取数据!
- 2楼网友:梦中风几里
- 2021-03-02 06:20
你的方法用错了
不必使用 OleDbDataReader dr = cmd.ExecuteReader();
应该使用断开式
OleDbConnection conn = new OleDbConnection(connectionString);
定义SqlDataAdapter sqlda = new SqlDataAdapter(sql语句, 连接对象);
定义 DataSet ds1 = new DataSet();
sqlda.Fill(ds1);
你遍历ds1.table[0]才可以。
不必使用 OleDbDataReader dr = cmd.ExecuteReader();
应该使用断开式
OleDbConnection conn = new OleDbConnection(connectionString);
定义SqlDataAdapter sqlda = new SqlDataAdapter(sql语句, 连接对象);
定义 DataSet ds1 = new DataSet();
sqlda.Fill(ds1);
你遍历ds1.table[0]才可以。
- 3楼网友:玩世
- 2021-03-02 06:14
你的dr里面也就读出一个datatable。直接
datatable dt=new datatable()
dt.load(dr);
for(int i=0;i<dt.rows.count;i++) //这里要循环dt,不然取出来的数据没有10行,那下面访问会出错的
{
x = dt.rows[i][3].ToString(); 这里的Tables报错!
y1 = dt.rows[i][1].ToString();
y2 =dt.rows[i][2].ToString();
list1.Add(x, y1);
list2.Add(x, y2);
}
datatable dt=new datatable()
dt.load(dr);
for(int i=0;i<dt.rows.count;i++) //这里要循环dt,不然取出来的数据没有10行,那下面访问会出错的
{
x = dt.rows[i][3].ToString(); 这里的Tables报错!
y1 = dt.rows[i][1].ToString();
y2 =dt.rows[i][2].ToString();
list1.Add(x, y1);
list2.Add(x, y2);
}
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯