使Cache访问方法保持静态

eyc*_*ych 9 c# asp.net static caching

在ASP.NET中,有没有理由不从Cache对象Static创建一组添加/删除/获取的函数?

Get() - 只是获取项目,没有理由不是静态
Add(),Remove() - 我已经读过添加/删除缓存有它自己的内部锁定机制,所以它们可以是静态的而不是我创建我的拥有lock(){}包装.

Chr*_*sic 10

它们已经可以通过静态上下文访问

HttpRuntime.Cache

HttpContext.Current.Cache无论如何仅仅转发到此调用的方法,但是HttpContext.Current.Cache如果它不在HttpContext.Current可用的生命周期中,则调用可能导致运行时错误.

回答你的问题:

是的,你可以使用它来处理它.你会有类似的东西

public static class StaticCache
{

    public static Add(object obj)
    {        
        try {            
            HttpRuntime.Cache.Add(obj);            
        }
        catch(Exception ex) {
            //log or something            
        }        
    }    
}
Run Code Online (Sandbox Code Playgroud)

用法类似于

StaticCache.Add("bob");