namespace iiie.CacheControl.Business.OutputCache { public abstract class IOutputCache { public virtual T Get(string key) where T : class { var o = Get(key) as T; return o; } public abstract object Get(string key); public abstract void Remove(string key); public abstract bool Contains(string key); public abstract void Add(string key, object o); } }