Sobes.tech
Junior — Middle

Можете ли да обясните какво представлява Action филтър в контекста на разработката на уеб приложения?

sobes.tech AI

Отговор от AI

Филтърът за действие в уеб разработката на C# (например в ASP.NET MVC) е компонент, който позволява изпълнението на допълнителна логика преди или след изпълнението на действие на контролер.

Основните възможности на филтрите за действия:

  • Изпълнение на код преди извикването на метода на действието (например проверка на авторизация, логване).
  • Изпълнение на код след изпълнението на метода на действието (например модифициране на резултата, логване).
  • Възможност за прекъсване на изпълнението на действието или промяна на резултата.

Пример за използване:

public class LogActionFilter : ActionFilterAttribute
{
    public override void OnActionExecuting(ActionExecutingContext context)
    {
        // Код, който се изпълнява преди действието
        Console.WriteLine("Начало на изпълнение на действието");
    }

    public override void OnActionExecuted(ActionExecutedContext context)
    {
        // Код, който се изпълнява след действието
        Console.WriteLine("Действието е изпълнено");
    }
}

[LogActionFilter]
public IActionResult Index()
{
    return View();
}

По този начин, филтрите за действия помагат за внедряване на пресечна логика в обработката на заявки.