因此,在准备对控制器进行单元测试时,我正在查看我的标准缓存实用程序,并想,嘿,访问 HttpRuntime.Cache 在 MVC 中直接被认为是有害的吗?
我将缓存包装在一个代理类中,该类实现了一个类似缓存的接口(虽然简单得多),这样我就可以在测试期间模拟它。但我想知道这是否已经在新框架中为我完成了。但是,我什么也找不到。
这是我如何做的一个想法:
public ActionResult DoStuffLol(guid id)
{
var model = CacheUtil.GetOrCreateAndStore(
"DoStuffLolModel",
() =>
{
/* construct model here; time consuming stuff */
return model;
});
return View("DoStuffLol", model);
}
那么,访问缓存的旧模式是否发生了变化?在 MVC 中缓存操作结果是否有更好的模式?