c# 怎么把数据库某个表的内容加到dictionary字典中?
如题,我希望把某个表加到dictionary,这样我定时判断数据就不用总是读取数据库了。直接读取dictionary,应该会效率点吧?但怎么加呢?...
如题,我希望把某个表加到dictionary,这样我定时判断数据就不用总是读取数据库了。直接读取dictionary,应该会效率点吧?但怎么加呢?
展开
2个回答
展开全部
这样可以读取,但是这样会带来的问题是,如果数据库数据有变更,你的集合是没有办法自动同步的,需要自己手动处理
添加方法:
查询得到数据表对应所有数据的集合(可以用Datatable接收),循环Datatable中的行对象,取出记录后写入到dictionary对象中就可以了
添加方法:
查询得到数据表对应所有数据的集合(可以用Datatable接收),循环Datatable中的行对象,取出记录后写入到dictionary对象中就可以了
追问
这个表不会修改
我主要的意思是不想循环遍历数据,用了dataset,我还要for(int i=0;i<ds.table[0].rows.count;......)
if(ds.table[0].rows[0]["string"]==1)
{}
else{}
我还要写以上这种形式的循环,但是我之前的循环太多了,这样写会导致一个方法下来,会有上万次循环,不效率。就是这个意思,最主要的意思就是最好不用循环
追答
不用循环最方便的方式就是全局变量,而且你也没有必要一定要把集合放到dictionary中的,datatable的操作也是很方便的(使用全局变量个人建议最好不要使用,因为很容易出问题),希望对你有所帮助
展开全部
你说的东西就是普通的dataset和datatable的用途,并不是用什么字典(当然一定要用字典也不是不行),至于datatable怎么用,请找任何一个C#的基础教材。
追问
我主要的意思是不想循环遍历数据,用了dataset,我还要for(int i=0;i<ds.table[0].rows.count;......)
if(ds.table[0].rows[0]["string"]==1)
{}
else{}
我还要写以上这种形式的循环,但是我之前的循环太多了,这样写会导致一个方法下来,会有上万次循环,不效率。就是这个意思,最主要的意思就是最好不用循环。。
追答
不需要你循环,它本身有datatable select,支持条件查询,这是基础内容不多说了
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |