Junior — Middle
Môžete vysvetliť, čo je to Action filter v kontexte vývoja webových aplikácií?
sobes.tech AI
Odpoveď od AI
Filtre akcie v webovom vývoji v C# (napríklad v ASP.NET MVC) je komponent, ktorý umožňuje vykonávať dodatočnú logiku pred alebo po vykonaní akcie kontroléra.
Hlavné funkcie filtrov akcie:
- Spúšťanie kódu pred volaním metódy akcie (napríklad kontrola autorizácie, logovanie).
- Spúšťanie kódu po vykonaní metódy akcie (napríklad úprava výsledku, logovanie).
- Možnosť prerušiť vykonanie akcie alebo zmeniť výsledok.
Príklad použitia:
public class LogActionFilter : ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext context)
{
// Kód, ktorý sa spúšťa pred akciou
Console.WriteLine("Začiatok vykonávania akcie");
}
public override void OnActionExecuted(ActionExecutedContext context)
{
// Kód, ktorý sa spúšťa po akcii
Console.WriteLine("Akcia dokončená");
}
}
[LogActionFilter]
public IActionResult Index()
{
return View();
}
Týmto spôsobom filtry akcie pomáhajú začleniť priečnu logiku do spracovania požiadaviek.