Sobes.tech
Junior — Middle

Kas saaksite selgitada, mis on Action filter veebirakenduste arendamise kontekstis?

sobes.tech AI

Vastus AI-lt

Tegevusfilter C# veebiarenduses (näiteks ASP.NET MVC-s) on komponent, mis võimaldab täiendavat loogikat täita enne või pärast kontrolleri (Action) tegevuse täitmist.

Tegevusfilterite peamised võimalused:

  • Koodi täitmine enne tegevuse meetodi kutsumist (näiteks autoriseerimise kontroll, logimine).
  • Koodi täitmine pärast tegevuse meetodi täitmist (näiteks tulemuse muutmine, logimine).
  • Võimalus tegevuse täitmine katkestada või tulemust muuta.

Kasutusnäide:

public class LogActionFilter : ActionFilterAttribute
{
    public override void OnActionExecuting(ActionExecutingContext context)
    {
        // Kood, mis täidetakse enne tegevust
        Console.WriteLine("Tegevuse täitmise algus");
    }

    public override void OnActionExecuted(ActionExecutedContext context)
    {
        // Kood, mis täidetakse pärast tegevust
        Console.WriteLine("Tegevus lõpetatud");
    }
}

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

Nii aitavad tegevusfiltrid integreerida ristlõikega loogikat päringute töötlemisse.