我尝试使用过滤器来最小化HTML,后者稍后使用Orchard.OutputCache模块进行缓存
public void OnActionExecuted(ActionExecutedContext filterContext)
{
if (filterContext.HttpContext.Response.Filter != null && !Orchard.UI.Admin.AdminFilter.IsApplied(filterContext.RequestContext))
{
filterContext.HttpContext.Response.Filter = new TidyHtml(filterContext.HttpContext.Response.Filter, filterContext.HttpContext.Response.Output.Encoding);
}
}
但我可以选择几个活动
(IActionFilter) OnActionExecuting , OnActionExecuted
(IResultFilter) OnResultExecuting , OnResultExecuted
我使用哪一个是否重要?这有什么不同吗?
答案 0 :(得分:1)
我不知道为什么,但是当从缓存服务时,IActionFilter比IResultFilter快50%。如果没有缓存,它们在44毫秒时几乎都是一样的。
IActionFilter - 来自缓存4ms的localhost上的平均值 IResultFilter - 来自缓存8ms的localhost上的平均值
所以我会坚持 OnActionExecuted