中易网

求c#大神解答tables老是报错,说缺少using指令集,这是一个zedgraph的数据源。

答案:4  悬赏:10  
解决时间 2021-03-02 19:55
求c#大神解答tables老是报错,说缺少using指令集,这是一个zedgraph的数据源。
最佳答案
你的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填充一个表
全部回答
OleDbDataReader有Table吗? 你完全用错了! 你如果用Table 就用DataAdapter填充 DataSet 用DataSet的Table 去读取数据!
你的方法用错了
不必使用 OleDbDataReader dr = cmd.ExecuteReader();
应该使用断开式
OleDbConnection conn = new OleDbConnection(connectionString);
定义SqlDataAdapter sqlda = new SqlDataAdapter(sql语句, 连接对象);
定义 DataSet ds1 = new DataSet();
sqlda.Fill(ds1);
你遍历ds1.table[0]才可以。
你的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);
}
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
关于there be 句型后非谓语动词的用法.
用友第一次做账还需要注册吗
能用微波炉烧制的陶瓷叫什么?
02759309617这个号码是属于什么号码
谁会做这些题目,帮一下?
今天我魅蓝3手机,突然密码解不开了,锁屏密
丁香街/红柳路(路口)在什么地方啊,我要过去
16岁就练囚徒健身好不好?
可注册.com 顶级域名,有意义的英文单词?
福兴源超市在什么地方啊,我要过去处理事情
CB400的发动机号NC23E-1398666,求鉴定是那一
律师为什么不愿意接案子
西宁交通大学有学前专业么?
高中有一个学业水平测试,是不是一定要过了,
后爱暖身茶有商标吗
推荐资讯
什么调味品调出来的汤最鲜美,哪儿有买的!?
徐姨便利店地址在什么地方,想过去办事
怎样销售柴油阿.?
在狗狗的眼里,人有多大
选车牌号云g、rrxxx
PHOTOSHOP如何制作放射效果的字体
成都火车北站到成都中医药大学温江校区怎么走
龙华五金配料商行地址有知道的么?有点事想过
北欧风情我想知道这个在什么地方
丰田雷凌双擎要交多少钱税
男生旅行用什么背包好?
托万科买里地址在哪,我要去那里办事
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?