caching a page

3
Caching a ASP.NET Page First, import the namespace of System.Web.Caching using System.Web.Caching; Declare the variables static bool itemRemoved = false; static CacheItemRemovedReason reason; CacheItemRemovedCallback onRemove = null; Define the method of AddItemToCache, it will use Cache.Add to add items to cache public void AddItemToCache(Object sender, EventArgs e) { itemRemoved = false; onRemove = new CacheItemRemovedCallback(this.RemovedCallback); if (Cache["Key1"] == null) Cache.Add("Key1", "Caching", null, DateTime.Now.AddSeconds(60), TimeSpan.Zero, CacheItemPriority.High, onRemove); } Define the method of RemoveItemFromCache, it will use Cache.Remove to remove items from cache public void RemoveItemFromCache(Object sender, EventArgs e) { if (Cache["Key1"] != null) Cache.Remove("Key1"); }

Upload: radha-krishnan

Post on 31-Jul-2015

367 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Caching a page

Caching a ASP.NET Page

First, import the namespace of System.Web.Caching

using System.Web.Caching;

Declare the variables

static bool itemRemoved = false;static CacheItemRemovedReason reason;CacheItemRemovedCallback onRemove = null;

Define the method of AddItemToCache, it will use Cache.Add to add items to cache

public void AddItemToCache(Object sender, EventArgs e){

itemRemoved = false;

onRemove = new CacheItemRemovedCallback(this.RemovedCallback);

if (Cache["Key1"] == null)

Cache.Add("Key1", "Caching", null, DateTime.Now.AddSeconds(60), TimeSpan.Zero, CacheItemPriority.High, onRemove);}

Define the method of RemoveItemFromCache, it will use Cache.Remove to remove items from cache

public void RemoveItemFromCache(Object sender, EventArgs e){

if (Cache["Key1"] != null)

Cache.Remove("Key1");}

When using the method of Cache.Remove , it will be leaded to invoke RemovedCallback method

public void RemovedCallback(String k, Object v, CacheItemRemovedReason r){

itemRemoved = true;reason = r;}

Page 2: Caching a page

Page_Load

protected void Page_Load(object sender, EventArgs e){

if (itemRemoved){

Response.Write("RemovedCallback event raised.");Response.Write("<BR>");Response.Write("Reason: <B>" + reason.ToString() + "</B>");}else{

Response.Write("Value of cache key: <B>" + Server.HtmlEncode(Cache["Key1"] as string) + "</B>");}}

The HTML of the web page

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html><body>

<Form id="Form1" runat="server">

<input id="Submit1" type=submit OnServerClick="AddItemToCache" value="Add Item To Cache" runat="server"/><input id="Submit2" type=submit OnServerClick="RemoveItemFromCache" value="Remove Item From Cache" runat="server"/>

</Form></body></html>