本文整理汇总了C#中System.Web.Mvc.ActionExecutedContext.SetETagWithCacheability方法的典型用法代码示例。如果您正苦于以下问题:C# ActionExecutedContext.SetETagWithCacheability方法的具体用法?C# ActionExecutedContext.SetETagWithCacheability怎么用?C# ActionExecutedContext.SetETagWithCacheability使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Web.Mvc.ActionExecutedContext
的用法示例。
在下文中一共展示了ActionExecutedContext.SetETagWithCacheability方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: OnActionExecuted
public void OnActionExecuted(ActionExecutedContext filterContext)
{
if (filterContext.GetETag() == AppVersion)
{
filterContext.Result = new HttpStatusCodeResult((int)HttpStatusCode.NotModified);
}
else
{
filterContext.SetETagWithCacheability(AppVersion);
}
}
示例2: OnActionExecuted
public void OnActionExecuted(ActionExecutedContext filterContext)
{
var result = filterContext.Result as ViewResultBase;
if (result == null)
return;
var versionable = result.Model as IVersionable;
if (versionable == null)
return;
var versionSent = GetSentVersionOfEntity(filterContext);
if (versionSent == versionable.Version)
{
filterContext.Result = new HttpStatusCodeResult((int)HttpStatusCode.NotModified);
filterContext.HttpContext.Response.SuppressContent = true;
}
else
{
filterContext.SetETagWithCacheability(versionable.Version.ToString(CultureInfo.InvariantCulture));
}
}