c# - 对象缓存 OBJECT CACHING
来源:互联网 发布:量化投资 算法 编辑:程序博客网 时间:2024/06/05 15:47
对象缓存类,转自此人博客:http://deanhume.com/Home/BlogPost/object-caching----net-4/37
using System;using System.Collections.Generic;using System.Linq;using System.Runtime.Caching;using System.Text;using System.Threading.Tasks;namespace YourNameSpace{ /// <summary> /// This class was borrowed from /// http://deanhume.com/Home/BlogPost/object-caching----net-4/37 /// </summary> public class CacheLayer { static readonly ObjectCache Cache = MemoryCache.Default; /// <summary> /// Retrieve cached item /// </summary> /// <typeparam name="T">Type of cached item</typeparam> /// <param name="key">Name of cached item</param> /// <returns>Cached item as type</returns> public static T Get<T>(string key) where T : class { try { return (T)Cache[key]; } catch { return null; } } /// <summary> /// Insert value into the cache using /// appropriate name/value pairs /// </summary> /// <typeparam name="T">Type of cached item</typeparam> /// <param name="objectToCache">Item to be cached</param> /// <param name="key">Name of item</param> public static void Add<T>(T objectToCache, string key) where T : class { Cache.Add(key, objectToCache, MemoryCache.InfiniteAbsoluteExpiration); } /// <summary> /// Insert value into the cache using /// appropriate name/value pairs /// </summary> /// <param name="objectToCache">Item to be cached</param> /// <param name="key">Name of item</param> public static void Add(object objectToCache, string key) { Cache.Add(key, objectToCache, MemoryCache.InfiniteAbsoluteExpiration); } /// <summary> /// Remove item from cache /// </summary> /// <param name="key">Name of cached item</param> public static void Clear(string key) { Cache.Remove(key); } /// <summary> /// Check for item in cache /// </summary> /// <param name="key">Name of cached item</param> /// <returns></returns> public static bool Exists(string key) { return Cache.Get(key) != null; } /// <summary> /// Gets all cached items as a list by their key. /// </summary> /// <returns></returns> public static List<string> GetAll() { return Cache.Select(keyValuePair => keyValuePair.Key).ToList(); } }}
0 0
- c# - 对象缓存 OBJECT CACHING
- Caching Application Block Hands-On Lab(缓存对象持久化)
- C#数据缓存介绍及Caching通用帮助类整理
- Redis缓存Object,List对象
- Smarty核心内容:Caching [缓存]
- Caching Bitmaps 缓存Bitmap
- Caching Bitmaps [缓存位图]
- Caching Bitmaps 缓存位图
- Caching Bitmaps [缓存位图]
- Caching Bitmaps(缓存位图)
- Caching Bitmaps(缓存位图)
- 缓存Bitmap Caching Bitmaps
- spray-caching缓存结果
- C#缓存介绍 Caching通用帮助类代码整理 .net几种缓存概述
- C#对象缓存类
- Phalcon之缓存对象关系映射(Caching in the ORM)
- HBase Scanner Caching 扫描器缓存
- C#基础之类(Class)与对象(Object)
- Windows下主要进程的启动顺序
- Spring MVC全局异常后返回JSON异常数据
- Java学习笔记之——多线程(一)
- [前端] 根据设备来判断url跳转
- 反射初探
- c# - 对象缓存 OBJECT CACHING
- 黑马程序员--Java反射
- 大二上学期的规划~
- PHP中的类型
- JS 控制页面超时后自动跳转到登陆页面
- 【Android基础】-Service组件使用详解
- POJ 1797 Heavy Transportation
- 列表(list), 元祖(tuple), 字典(dict), 字符串(string), 集合(set) 的基本方法
- 带参数的Fragment