我是靠谱客的博主 高挑摩托,最近开发中收集的这篇文章主要介绍缓存的有几种方式,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

前台代码:

<div>
        <asp:GridView ID="GridView1" runat="server">
        </asp:GridView>
    </div>

 

后台代码:

        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (Cache["news"] == null)
                {
                    DataTable dt = LoadData();
                    //Cache.Insert("news", dt);//将datatable添加到缓存中

                    //将缓存和外部文件相关联,外部文件以改变,缓存即失效
                    //Cache.Insert("news", dt, new CacheDependency(@"d:cache.txt"));

                    //为缓存设定一个绝对时间,让缓存在这个时间到的时候失效
                    //Cache.Insert("news", dt, null, DateTime.Now.AddSeconds(20),TimeSpan.Zero);
                   // Cache.Insert("news", dt, null, DateTime.MaxValue, TimeSpan.FromSeconds(30));

                    Cache.Insert("news", dt, new SqlCacheDependency("sqlcache", "T_News1"));

                    //1)使用数据库安装工具aspnetsql,向数据库添加缓存依赖。让sqlserver支持asp.net缓存
                    //执行命令:cd C:WindowsMicrosoft.NETFrameworkv4.0.30319
                    //执行命令:aspnet_regsql -C "Data Source=.;Initial Catalog=News;Persist Security Info=True;User ID=sa;Password=111111" -ed -et -t "T_News1"
                    // 注:为News数据库中的T_News1表启用缓存依赖项,即此表中的数据更改之后缓存失效
                    //    2)在web.config的sys.web节中添加依赖信息
                    //<caching>
                    //    <sqlCacheDependency enabled="true" pollTime="5000">
                    //      <databases>
                    //        <add name="sqlcache" connectionStringName="strcon"/>
                    //      </databases>
                    //    </sqlCacheDependency>
                    //  </caching>
                    //    注:其中 polltime表示更新频率,即每隔多长时间去数据重新查询一次来更新


                    this.GridView1.DataSource = dt;
                    this.GridView1.DataBind();
                }
                else
                {
                    DataTable dt = Cache["news"] as DataTable;
                    this.GridView1.DataSource = dt;
                    this.GridView1.DataBind();
                }

            }
        }

        private DataTable LoadData()
        {
            string strcon = ConfigurationManager.ConnectionStrings["strcon"].ConnectionString;
            SqlConnection conn = new SqlConnection(strcon);
            SqlCommand cmd = conn.CreateCommand();
            cmd.CommandText = "Pro_TNews1Paging";
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.AddWithValue("@pagesize", 500);
            cmd.Parameters.AddWithValue("@pageindex", 1);
            DataTable dt = new DataTable();
            SqlDataAdapter adapter = new SqlDataAdapter(cmd);
            adapter.Fill(dt);
            cmd.Dispose();
            conn.Dispose();
            return dt;

        }

 

最后

以上就是高挑摩托为你收集整理的缓存的有几种方式的全部内容,希望文章能够帮你解决缓存的有几种方式所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(72)

评论列表共有 0 条评论

立即
投稿
返回
顶部