Ejemplo n.º 1
0
 public void OnActionExecuted(ActionExecutedContext context)
 {
     var time = _timer.ElapsedMilliseconds;
     context.HttpContext.Response.Headers.Add(
         "ActionElapsedTime",
         new string[] { time.ToString(CultureInfo.InvariantCulture) + " ms" });
 }
Ejemplo n.º 2
0
        public override void OnActionExecuted(ActionExecutedContext context)
        {
            if (context == null)
            {
                throw Error.ArgumentNull("context");
            }

            var response = context.HttpContext.Response;
            if (!response.IsSuccessStatusCode())
            {
                return;
            }

            var request = context.HttpContext.Request;
            if (request.HasQueryOptions())
            {
                var result = context.Result as ObjectResult;
                if (result == null)
                {
                    throw Error.Argument("context", SRResources.QueryingRequiresObjectContent, context.Result.GetType().FullName);
                }

                if (result.Value != null)
                {
                    result.Value = ApplyQueryOptions(result.Value, request, context.ActionDescriptor);
                }
            }
        }
        public override void OnActionExecuted(ActionExecutedContext filterContext)
        {
            ControllerBase controller = filterContext.Controller as ControllerBase;

              if (controller != null)
              {
            string serializedModelState = controller.TempData[Key] as string;

            if (!string.IsNullOrEmpty(serializedModelState))
            {
              IEnumerable<ModelStateWrapper> modelStateWrappers = JsonConvert.DeserializeObject<IEnumerable<ModelStateWrapper>>(serializedModelState, new JsonSerializerSettings() { Error = DeserializationErrorHandler });

              if (modelStateWrappers != null)
              {
            ModelStateDictionary modelState = new ModelStateDictionary();

            foreach (ModelStateWrapper modelStateWrapper in modelStateWrappers)
            {
              ModelState ms = new ModelState();

              ms.ValidationState = modelStateWrapper.ValidationState;
              ms.Value = new ValueProviderResult(modelStateWrapper.Value, modelStateWrapper.Value, null);
              modelState.Add(modelStateWrapper.Key, ms);
            }

            if (filterContext.Result is ViewResult)
              controller.ViewData.ModelState.Merge(modelState);

            else controller.TempData.Remove(Key);
              }
            }
              }

              base.OnActionExecuted(filterContext);
        }
 public void OnActionExecuted(ActionExecutedContext context)
 {
     /*
     * TODO: This should use an IRequestIdGenerator, which is an interface that still needs to be created.
     */
     ConsoleLogger.Instance.Log("Adding a request-id to the response: " + localId);
     context.HttpContext.Response.Headers.Add("request-id", new string[] { localId });
 }
Ejemplo n.º 5
0
 public void OnActionExecuted(ActionExecutedContext context)
 {
     context.Result = new ContentResult()
     {
         Content = "4",
         ContentType = "text/plain"
     };
 }
Ejemplo n.º 6
0
 public void OnActionExecuted(ActionExecutedContext context)
 {
     context.Result = new ContentResult()
     {
         Content = "4",
         ContentType = new MediaTypeHeaderValue("text/plain")
     };
 }
        public override void OnActionExecuted(ActionExecutedContext context)
        {
            if (context.Exception != null)
            {
                context.Result = Helpers.GetContentResult(null, "Hi from Action Filter");

                context.Exception = null;
            }
        }
Ejemplo n.º 8
0
        public override void OnActionExecuted(ActionExecutedContext context)
        {
            var result = context.Result as ObjectResult;
            if (result != null)
            {
                result.Formatters.Add(new CustomFormatter("application/FormatFilterController"));
            }

            base.OnActionExecuted(context);
        }
        public override void OnActionExecuted(ActionExecutedContext context)
        {
            var result = context.Result as ObjectResult;
            if (result != null)
            {
                result.Formatters.Add(new CustomFormatter("application/custom_NoProducesContentOnClassController_Action"));
            }

            base.OnActionExecuted(context);
        }
        public override void OnActionExecuted(ActionExecutedContext context)
        {
            var result = context.Result as ObjectResult;

            if (result != null)
            {
                result.Formatters.Add(new VCardFormatter_V3());
                result.Formatters.Add(new VCardFormatter_V4());
            }
        }
        public override void OnActionExecuted(ActionExecutedContext context)
        {
            var result = context.Result as ObjectResult;
            if (result != null)
            {
                result.Formatters.Add(new XmlSerializerOutputFormatter());
            }

            base.OnActionExecuted(context);
        }
        public override void OnActionExecuted(ActionExecutedContext context)
        {
            var result = context.Result as ObjectResult;
            if (result != null)
            {
                var noContentFormatter = new HttpNoContentOutputFormatter() { TreatNullValueAsNoContent = false };
                result.Formatters.Add(noContentFormatter);
            }

            base.OnActionExecuted(context);
        }
Ejemplo n.º 13
0
 public override void OnActionExecuted(ActionExecutedContext context)
 {
     if (context.ActionDescriptor.DisplayName == "FiltersWebSite.ProductsController.GetPrice")
     {
         context.HttpContext.Response.Headers.Append("filters",
             "On Controller Action Filter - OnActionExecuted");
     }
     else
     {
         context.Result = Helpers.GetContentResult(context.Result, "Controller Action filter - OnActionExecuted");
     }
 }
Ejemplo n.º 14
0
        public override void OnActionExecuted(ActionExecutedContext context)
        {
            if (context.Exception != null && !context.ExceptionHandled)
            {
                context.ExceptionHandled = true;

                context.Result = new ContentResult
                {
                    ContentType = new MediaTypeHeaderValue("text/plain"),
                    Content = "Boom " + context.Exception.Message
                };
            }
        }
Ejemplo n.º 15
0
        public void OnActionExecuted(ActionExecutedContext context)
        {
            if (context.ActionDescriptor.DisplayName == "FiltersWebSite.ActionFilterController.GetHelloWorld")
            {
                context.Result = Helpers.GetContentResult(context.Result, "GlobalActionFilter.OnActionExecuted");
            }

            if (context.ActionDescriptor.DisplayName == "FiltersWebSite.ProductsController.GetPrice")
            {
                context.HttpContext.Response.Headers.Append("filters",
                    "Global Action Filter - OnActionExecuted");
            }
        }
Ejemplo n.º 16
0
        public override void OnActionExecuted(ActionExecutedContext actionExecutedContext)
        {
            if (actionExecutedContext.HttpContext.Response.StatusCode == 200 &&
                actionExecutedContext.HttpContext.Response.Headers["CacheControl"] == null)
            {
                actionExecutedContext.HttpContext.Response.Headers["CacheControl"] = "no-cache";
                actionExecutedContext.HttpContext.Response.Headers["Pragma"] = "no-cache";

                if (actionExecutedContext.HttpContext.Response.Headers["Expires"] == null)
                {
                    actionExecutedContext.HttpContext.Response.Headers["Expires"] = DateTimeOffset.UtcNow.AddDays(-1).ToString();
                }
            }
        }
Ejemplo n.º 17
0
            /// <summary>
            /// Adds the expiry headers
            /// </summary>
            /// <param name="context"></param>
            public void OnActionExecuted(ActionExecutedContext context)
            {
                //get the model from the items
                if (!context.HttpContext.Items.ContainsKey(nameof(AddExpiryHeadersAttribute))) return;
                var file = context.HttpContext.Items[nameof(AddExpiryHeadersAttribute)] as RequestModel;
                if (file == null) return;

                var etag = _hasher.Hash(file.FileKey + file.Compression + file.Mime);

                context.HttpContext.Response.AddETagResponseHeader(etag);
                context.HttpContext.Response.AddCacheControlResponseHeader();
                context.HttpContext.Response.AddLastModifiedResponseHeader(file);
                context.HttpContext.Response.AddExpiresResponseHeader();
            }
Ejemplo n.º 18
0
        public override void OnActionExecuted(ActionExecutedContext context)
        {
            var result = context.Result as ObjectResult;
            if (result != null)
            {
                result.Formatters.Add(new PlainTextFormatter());
                result.Formatters.Add(new CustomFormatter("application/custom"));

                var jsonFormatter = new JsonOutputFormatter();
                jsonFormatter.SerializerSettings.Formatting = Formatting.Indented;
                result.Formatters.Add(jsonFormatter);
            }

            base.OnActionExecuted(context);
        }
        public override void OnActionExecuted(ActionExecutedContext context)
        {
            if (!context.ExceptionHandled)
            {
                var httpResponseException = context.Exception as HttpResponseException;
                if (httpResponseException != null)
                {
                    context.Result = new NoContentResult();
                    context.ExceptionHandled = true;

                    // Null it out so that next filter do not handle it.
                    context.Exception = null;
                }
            }
        }
Ejemplo n.º 20
0
        public override void OnActionExecuted(ActionExecutedContext context)
        {
            var action = (ControllerActionDescriptor)context.ActionDescriptor;
            context.HttpContext.Response.Headers.Add(
                "ActionSelection",
                new string[]
                {
                    JsonConvert.SerializeObject(new
                    {
                        ActionName = action.Name,
                        ControllerName = action.ControllerName
                    })
                });

            context.Result = new HttpStatusCodeResult(StatusCodes.Status200OK);
        }
            /// <summary>
            /// Adds the expiry headers
            /// </summary>
            /// <param name="context"></param>
            public void OnActionExecuted(ActionExecutedContext context)
            {
                //get the model from the items
                if (!context.HttpContext.Items.ContainsKey(nameof(CheckNotModifiedAttribute))) return;
                var file = context.HttpContext.Items[nameof(CheckNotModifiedAttribute)] as RequestModel;
                if (file == null) return;

                var etag = _hasher.Hash(file.FileKey + file.Compression + file.Mime);

                var isDifferent = context.HttpContext.Request.HasETagBeenModified(etag);
                var hasChanged = context.HttpContext.Request.HasRequestBeenModifiedSince(file.LastFileWriteTime.ToUniversalTime());
                if (!isDifferent || !hasChanged)
                {
                    ReturnNotModified(context);
                }
            }
        public override void OnActionExecuted(ActionExecutedContext filterContext)
        {
            ControllerBase controller = filterContext.Controller as ControllerBase;

              if (controller != null && !controller.ViewData.ModelState.IsValid)
              {
            if ((filterContext.Result is RedirectResult) || (filterContext.Result is RedirectToRouteResult))
            {
              IEnumerable<ModelStateWrapper> modelStateWrappers = controller.ViewData.ModelState.Select(ms => new ModelStateWrapper() { Key = ms.Key, ValidationState = ms.Value.ValidationState, Value = ms.Value.Value.AttemptedValue  });

              controller.TempData[Key] = JsonConvert.SerializeObject(modelStateWrappers, Formatting.None, new JsonSerializerSettings() { ContractResolver = new NoCultureInfoResolver() });
            }
              }

              base.OnActionExecuted(filterContext);
        }
Ejemplo n.º 23
0
 public override void OnActionExecuted(ActionExecutedContext context)
 {
     context.HttpContext.Response.Headers.Append("filters", "Controller Override - OnActionExecuted");
 }
 public override void OnActionExecuted(ActionExecutedContext context)
 {
     _logger.LogWarning("ClassFilter OnActionExecuted");
     base.OnActionExecuted(context);
 }
 private void ReturnNotModified(ActionExecutedContext context)
 {
     context.Result = new HttpStatusCodeResult(HttpConstants.NotModified304);
 }
Ejemplo n.º 26
0
 public override void OnActionExecuted(ActionExecutedContext context)
 {
     context.Result = Helpers.GetContentResult(context.Result, "Controller override - OnActionExecuted");
 }
Ejemplo n.º 27
0
 public virtual void OnActionExecuted([NotNull] ActionExecutedContext context)
 {
 }
 public override void OnActionExecuted(ActionExecutedContext context)
 {
     _logger.LogInformation("OnActionExecuted");
     base.OnActionExecuted(context);
 }
Ejemplo n.º 29
0
 public void OnActionExecuted(ActionExecutedContext context)
 {
     throw new NotImplementedException();
 }
Ejemplo n.º 30
0
 public void OnActionExecuted(ActionExecutedContext context)
 {
 }
Ejemplo n.º 31
0
 public void OnActionExecuted(ActionExecutedContext context)
 {
     watchService.Lap("Action Executed");
     context.HttpContext.Response.Headers.Add("stopwatch ", new string[] { watchService.ToString() });
 }