企業類庫之Caching Application Block (一)

 

配置文件

<?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, 
nullnew 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;
            }

        }

    }

}
阅读更多
个人分类: 企業類庫
想对作者说点什么? 我来说一句

EncryptSecurityField

2008年05月07日 262KB 下载

EnterpriseRes

2009年03月04日 3.23MB 下载

Enterprise Library4.1中文教程

2009年10月14日 7.05MB 下载

簡單的Drag 拖動

2011年10月13日 4KB 下载

没有更多推荐了,返回首页

不良信息举报

企業類庫之Caching Application Block (一)

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭