配置文件 <? xml version="1.0" encoding="utf-8" ?> < configuration > < configSections > < section name ="cachingConfiguration" type ="Microsoft.Practices.EnterpriseLibrary.Caching.Configuration.CacheManagerSettings,Microsoft.Practices.EnterpriseLibrary.Caching" /> </ configSections > < cachingConfiguration defaultCacheManager ="Default Cache Manager" > < backingStores > < add name ="inMemory" type ="Microsoft.Practices.EnterpriseLibrary.Caching.BackingStoreImplementations.NullBackingStore, Microsoft.Practices.EnterpriseLibrary.Caching" /> </ backingStores > < cacheManagers > < add name ="Default Cache Manager" expirationPollFrequencyInSeconds ="60" maximumElementsInCacheBeforeScavenging ="1000" numberToRemoveWhenScavenging ="10" backingStoreName ="inMemory" /> < add name ="Loading Scenario Cache Manager" expirationPollFrequencyInSeconds ="60" maximumElementsInCacheBeforeScavenging ="1000" numberToRemoveWhenScavenging ="10" backingStoreName ="inMemory" /> </ cacheManagers > </ cachingConfiguration > </ configuration > 使用程式 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using Microsoft.Practices.EnterpriseLibrary.Caching; using Microsoft.Practices.EnterpriseLibrary.Caching.Expirations; namespace Demo001 ... { public partial class Form1 : Form ...{ private CacheManager cache = CacheFactory.GetCacheManager("Loading Scenario Cache Manager"); public Form1() ...{ InitializeComponent(); } private void button1_Click(object sender, EventArgs e) ...{ Prodect prodect = new Prodect(textBox1.Text, textBox2.Text, Convert.ToInt32(textBox3.Text)); cache.Add(prodect.ProdectID, prodect, CacheItemPriority.Normal, null, new SlidingTime(TimeSpan.FromSeconds(10))); } private void button2_Click(object sender, EventArgs e) ...{ cache.Flush(); } private void button3_Click(object sender, EventArgs e) ...{ try ...{ MessageBox.Show(((Prodect)cache.GetData(textBox1.Text)).ProdectName); } catch (Exception Err) ...{ MessageBox.Show(Err.Message); } } private void button4_Click(object sender, EventArgs e) ...{ cache.Remove(textBox1.Text); } private void button5_Click(object sender, EventArgs e) ...{ MessageBox.Show(cache.Count.ToString()); } } class Prodect ...{ private string ID; private string Name; private int Price; public Prodect(string id, string name, int price) ...{ ID = id; Name = name; Price = price; } public string ProdectID ...{ get ...{ return ID; } } public string ProdectName ...{ get ...{ return Name; } } }}