首页 新闻 会员 周边 捐助

SqlCacheDependency缓存始终是失效

0
悬赏园豆:15 [待解决问题]
SqlDataAdapter sda = new SqlDataAdapter(sqlcomd);
                    SqlCacheDependency scd = new SqlCacheDependency(sqlcomd);
                    sda.Fill(ds);
                    //HttpRuntime.Cache.Insert(key, ds, scd,Cache.NoAbsoluteExpiration, TimeSpan.Zero, CacheItemPriority.Default, callBack);
                    HttpRuntime.Cache.Insert(key, ds, scd);
cache里面始终是没有值,请问是哪参数不对吗
李东deZY的主页 李东deZY | 初学一级 | 园豆:187
提问于:2014-07-23 13:09
< >
分享
所有回答(1)
0
Launcher | 园豆:45050 (高人七级) | 2014-07-23 13:17

我看了的,都设置了,就是不好使,cache里面始终没有值

支持(0) 反对(0) 李东deZY | 园豆:187 (初学一级) | 2014-07-23 13:21

我的sql:select ID,Name,Parentid,Layer from dbo.Tree

支持(0) 反对(0) 李东deZY | 园豆:187 (初学一级) | 2014-07-23 13:22

@李东deZY: 你要把 SqlCacheDependency 去掉,它有值吗?

支持(0) 反对(0) Launcher | 园豆:45050 (高人七级) | 2014-07-23 13:58

@Launcher: 把 SqlCacheDependency 去掉后有值

支持(0) 反对(0) 李东deZY | 园豆:187 (初学一级) | 2014-07-23 14:49

@李东deZY: 使用依赖的时候, callBack 有被调用吗?

支持(0) 反对(0) Launcher | 园豆:45050 (高人七级) | 2014-07-23 14:56

@Launcher: 有callback,callback里面重新访问了一次数据库,就出现死循环了

我的qq号381042937

支持(0) 反对(0) 李东deZY | 园豆:187 (初学一级) | 2014-07-23 15:15

@李东deZY: 注意缓存依赖使用的 SQL 语句,只能是 SELECT,并且不能包含 TOP,表名前最好加上架构名称(例如 dbo).

        void Application_Start(object sender, EventArgs e)
        {
            SqlDependency.Start(ConfigurationManager.ConnectionStrings["dbname"].ConnectionString);
        }

        void CacheCall()
        {
            using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["dbname"].ConnectionString))
            {
                SqlCommand cmd = new SqlCommand("SELECT C1,C2,C3 FROM dbo.T1", conn);
                SqlCacheDependency scd = new SqlCacheDependency(cmd);

                SqlDataAdapter da = new SqlDataAdapter(cmd);
                DataSet ds = new DataSet();
                da.Fill(ds);

                HttpRuntime.Cache.Insert("Key", ds, scd, Cache.NoAbsoluteExpiration, TimeSpan.Zero, CacheItemPriority.Normal,
                    (k, v, r) =>
                    {
                        // do something
                        System.Diagnostics.Debug.WriteLine(k);
                    });
            }
        }
支持(0) 反对(0) Launcher | 园豆:45050 (高人七级) | 2014-07-24 14:31
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册