• [置顶] 页面缓存,cache,设置缓存过期时间,OutputCache


    页面缓存

    方法一:

    protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                //缓存有数据
                if (Cache["List"] == null)
                {
                    string sql = "select * from [dbo].[sys_user]";
    
                    ////没有过期时间
                    ////Cache["List"] = AutoCodeKldder.SqlHelper.ExeccutDataTable(sql);
                    //Cache.Insert("List", AutoCodeKldder.SqlHelper.ExeccutDataTable(sql));
                    
                    //带过期时间(15秒)
                    Cache.Insert("List", AutoCodeKldder.SqlHelper.ExeccutDataTable(sql), null, DateTime.Now.AddSeconds(15), System.Web.Caching.Cache.NoSlidingExpiration);
                }
                //从缓存拿数据
                DataTable data = Cache["List"] as DataTable;
                StringBuilder str = new StringBuilder();
                if (data.Rows.Count > 0)
                {
                    foreach (DataRow row in data.Rows)
                    {
                        string name = row["loginId"].ToString().Trim();
                        str.Append(name + "<br />");
                    }
                }
                Response.Write(str.ToString().Trim());
            }
        }


    方法二:


    protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                //前台有<%@ OutputCache Duration="15" VaryByParam="none" %>标记 页面缓存15秒
                //Duration 以秒为单位的缓存时间
                //VaryByParam 区分参数 带参数的为: VaryByParam="id" or VaryByParam="id;name" or VaryByParam="*"
                string sql = "select * from [dbo].[sys_user]";
                DataTable data = AutoCodeKldder.SqlHelper.ExeccutDataTable(sql);
                StringBuilder str = new StringBuilder();
                if (data.Rows.Count > 0)
                {
                    foreach (DataRow row in data.Rows)
                    {
                        string name = row["loginId"].ToString().Trim();
                        str.Append(name + "<br />");
                    }
                }
                Response.Write(str.ToString().Trim());
                Response.Write(DateTime.Now.ToString());
            }
        }



    。前台有<%@ OutputCache Duration="15" VaryByParam="none" %>标记 页面缓存15秒
    。Duration 以秒为单位的缓存时间
    。VaryByParam 区分参数 带参数的为: VaryByParam="id" or VaryByParam="id;name" or VaryByParam="*"

  • 相关阅读:
    乔布斯《遗失的访谈》全文:尘封16年的预见
    Java开发超级工具集
    android root权限破解分析
    android linux 命令
    Dom加载让图片加载完再执行
    关于chrome dev tools一些技巧
    1 MySQL基础知识笔记
    教我SQL的老师
    SQL limit和offset的使用
    一次批量复制多个不同结果到剪贴板不用在粘贴文本与被粘贴文本之间反复横跳啦,
  • 原文地址:https://www.cnblogs.com/riskyer/p/3279797.html
Copyright © 2020-2023  润新知