ASP.Net Cache(缓存)

原创 2015年07月06日 22:29:39

实验目的:

把数据放到Cache中,在指定的时间内,可以直接从Cache中获取,避免对数据库等的压力。
案例:人员列表的缓存
(*)页面缓存、数据库源缓存。。。
(*)memcached

代码

Cache.html

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Cache.aspx.cs" Inherits="wj.Cache" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
        <div>

            用户信息:
            <ul>
                <asp:Repeater ID="Repeater1" runat="server">
                    <ItemTemplate><li>姓名:<%#Eval("username") %>密码:<%#Eval("password") %></li></ItemTemplate>

                </asp:Repeater>

            </ul>
        </div>
    </form>
</body>
</html>

Cache.cs

using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace wj
{
    public partial class Cache : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            //人员信息展示
            /*
           DataTable tt= SqlHelper.ExecuteQuery("select * from T_users");  */
            //缓存,使得查询过的数据先保存在内存中

            //1.数据查询来了。好。先去缓存中查找
            DataTable tt = (DataTable)HttpRuntime.Cache["persons"];
            if (tt == null)//如果缓存Catche中没有,再去数据库中查询,,这样可以降低数据库服务器的压力
            {
                tt = SqlHelper.ExecuteQuery("select * from T_users");
                //将查询的结果存入缓存中,设置30秒后过期
                HttpRuntime.Cache.Insert("persons", tt, null, DateTime.Now.AddSeconds(30), TimeSpan.Zero);
            }
            Repeater1.DataSource = tt;
            Repeater1.DataBind();
        }
    }
}

调试

调试打开,cache.aspx,在30秒之内,点击刷新按钮,调试查看后,tt已经有了缓存信息;
这里写图片描述
刷新页面后。
这里写图片描述

版权声明:本文为博主原创文章,未经博主允许不得转载。

System.Web.Caching.Cache类 Asp.Net缓存 各种缓存依赖

Cache类,是一个用于缓存常用信息的类。HttpRuntime.Cache以及HttpContext.Current.Cache都是该类的实例。 一、属性 属性 说明 C...
  • u012770274
  • u012770274
  • 2015年08月28日 14:27
  • 2398

ASP.NET cache缓存的用法

本文导读:在.NET运用中经常用到缓存(Cache)对象。有HttpContext.Current.Cache以及HttpRuntime.Cache,HttpRuntime.Cache是应用程序级别的...
  • mss359681091
  • mss359681091
  • 2016年04月06日 17:21
  • 6843

ASP.NET 缓存对象的使用

ASP.NET为了方便我们访问Cache,在HttpRuntime类中加了一个静态属性Cache,这样,我们就可以在任意地方使用Cache...
  • zhifeiya
  • zhifeiya
  • 2014年12月10日 23:38
  • 1298

Asp.net/C#/Mvc 中Cache缓存帮助类

using System; using System.Web; using System.Collections; namespace MSCL { /// /// Cache辅助...
  • smartsmile2012
  • smartsmile2012
  • 2016年12月17日 16:22
  • 3367

Asp.net(C#)-显示所有缓存 清除所有缓存

//清除所有缓存protected void RemoveAllCache() { System.Web.Caching.Cache _cache = HttpRuntime.Cache; IDict...
  • ldl22847
  • ldl22847
  • 2011年05月16日 11:10
  • 1463

asp.net vb版 cache 处理缓存实例

asp.net vb版 cache 处理缓存
  • Jamie2012
  • Jamie2012
  • 2017年04月26日 22:46
  • 494

ASP.NET缓存:System.Web.Caching.Cache类和缓存依赖

System.We.Caching命名空间中的Cache类是一个用于缓存常用信息的类,HttpRuntime.Cache以及HttpContext.Cache都是该类的实例。 一、属性 ...
  • zhulongxi
  • zhulongxi
  • 2017年05月22日 12:25
  • 373

ASP.NET 缓存:方法和最佳实践 (cache)

ASP.NET   缓存:方法和最佳实践         摘要:ASP.NET   提供三种主要形式的缓存:页面级输出缓存、用户控件级输出缓存(或称为片段缓存)和缓存   API。输出缓存和片段缓存的...
  • xiaoxiaohai123
  • xiaoxiaohai123
  • 2008年04月24日 16:57
  • 1479

ASP.NET读取DLL文件中的页面和用户控件(VirtualPathProvider VirtualFile)

这篇文章用来介绍一下如何通过VirtualPathProvider来获取程序集中的页面和用户控件的内容。这样做的好处是可以在项目中达到所有的文件路径是统一的,不管你的页面或者控件来自于任何一个程序集。...
  • aa466564931
  • aa466564931
  • 2012年07月06日 17:26
  • 2565

ASP.NET缓存Cache的应用-提高数据库读取速度

一、 Cache概述       既然缓存中的数据其实是来自数据库的,那么缓存中的数据如何和数据库进行同步呢?一般来说,缓存中应该存放改动不大或者对数据的实时性没有太多要求的数据。这样,我们只需要定期...
  • smartsmile2012
  • smartsmile2012
  • 2012年08月23日 11:38
  • 1956
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ASP.Net Cache(缓存)
举报原因:
原因补充:

(最多只允许输入30个字)