public override void ExecuteResult(ControllerContext context)
 {
     bool notModified = IsNotModified(context.HttpContext.Request);
     if (notModified)
     {
         var statusCode = new HttpStatusCodeResult(304, "Not Modified");
         statusCode.ExecuteResult(context);
     }
     else
     {
         context.HttpContext.Response.Cache.SetLastModified(lastModified);
         // HttpCachePolicyは、CacheabilityがPrivate(デフォルト値)に設定されていると、
         // SetETag()でETagヘッダを追加しません。(既知の不具合)
         context.HttpContext.Response.AddHeader("ETag", guid.ToString());
         base.ExecuteResult(context);
     }
 }
Example #2
0
 private void GenerateNotFoundStatus()
 {
     var notFoundResult = new HttpStatusCodeResult(HttpStatusCode.NotFound);
     notFoundResult.ExecuteResult(ControllerContext);
 }