[置顶] 页面缓存,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="*"

你可能感兴趣的:(cache)