Справочная информация:
Я пытаюсь устранить потенциальную проблему безопасности, чтобы удалить одиночные кавычки, введенные в качестве строковых параметров в мой метод WebAPI (это необходимо сделать во всем приложении).
Я попытался сделать это, создав Фильтр действий, который делает необходимые
public class ValidateActionParametersAttribute : ActionFilterAttribute, IActionFilter
{
public override void OnActionExecuting(HttpActionContext actionExecutedContext)
{
var parameters = actionExecutedContext.ActionArguments;
var parameterList = parameters.Values.ToList();
parameterList.Where(x => x.GetType() == typeof(string)).ToList().ForEach(y => y = y.ToString().Replace("\'", ""));
base.OnActionExecuting(actionExecutedContext);
}
}
И зарегистрировал его глобально в моем WebApiConfig
config.Filters.Add(new ValidateActionParametersAttribute());
Но когда я проверилпосле размещения точки останова в коде изменения параметров, выполненные в ActionFilter, похоже, не отражаются.Кто-нибудь может подсказать мне, что я делаю не так?