首页 新闻 搜索 专区 学院

.net web开发中的Dictionary

0
悬赏园豆:20 [已关闭问题] 关闭于 2010-02-26 15:40

今天因为要做一个关于搜索的功能,但是每次都将搜索条件连接成sql然后给DB实在是有点臃肿,于是便想用Dictionary来实现,

但从来没有使用过Dictionary,查阅msdn还有百度谷歌,很多例子都是针对控制台或者winform的例子,

我的问题是这样的:

因为只是测试Dictionary的使用方式,所以暂时没有考虑其性能,

我定义一个Dictionary<string, DataTable> ddt = new Dictionary<string, DataTable>();

//ddt是全局变量

ddt.Add("Hire", dt);这个写在if(!ispostback)里面,

然后在我click button时,我做这样的操作, ddt["Hire"].select("title like '%a%'");

这时报错, 说字典中未包含该关键字,

这是什么原因.

 

双调的主页 双调 | 初学一级 | 园豆:7
提问于:2010-02-26 13:23
< >
分享
所有回答(2)
0

因为你的ddt并没有持久和缓存下来,你可以看一下,是否这个ddt是null

你可以把内容存放在viewstate里面

给你个参考

protected override object SaveViewState()
{
    ddt = (Dictionary)ViewState["ddt"];
    return base.SaveViewState();
}

protected override void LoadViewState(object savedState)
{
    base.LoadViewState(savedState);
  ViewState["ddt"] = ddt;
}
查尔斯 | 园豆:3832 (老鸟四级) | 2010-02-26 14:14
0

ddt["Hire"].select("title like '%a%'")

你这是定义的dictionary的扩展方法,里面的参数是应该是一个Func<>。

 

你这段代码能编译?

自由飞 | 园豆:174 (初学一级) | 2010-02-26 14:34
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册