我正在开发一个ASP.NET MVC网站,该网站为每个网址提供两个不同版本的网站(一个用于移动设备,一个用于桌面设备)。我试图设置Responce.Cache.VaryByHeaders.UserAgent = true,但不希望必须在控制器中的每个操作上指定它,似乎是多余的。我想全局设置if是否为特定控制器中的所有操作。这是合理的事吗?我在哪里放置逻辑?
答案 0 :(得分:2)
一种选择是使用Action filters。
来自howto的示例:
public class CachingFilterAttribute : ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext
filterContext)
{
// set VaryByHeaders the way you need
}
}
[CachingFilter]
public MyController : Controller...