Sobes.tech
Junior — Middle

Czy możesz wyjaśnić, czym jest filtr akcji w kontekście tworzenia aplikacji internetowych?

sobes.tech AI

Odpowiedź od AI

Filtr akcji w programowaniu webowym w C# (np. w ASP.NET MVC) to komponent, który pozwala na wykonanie dodatkowej logiki przed lub po wykonaniu akcji kontrolera.

Główne możliwości filtrów akcji:

  • Wykonywanie kodu przed wywołaniem metody akcji (np. sprawdzanie autoryzacji, logowanie).
  • Wykonywanie kodu po wykonaniu metody akcji (np. modyfikacja wyniku, logowanie).
  • Możliwość przerwania wykonania akcji lub zmiany wyniku.

Przykład użycia:

public class LogActionFilter : ActionFilterAttribute
{
    public override void OnActionExecuting(ActionExecutingContext context)
    {
        // Kod wykonywany przed akcją
        Console.WriteLine("Rozpoczęcie wykonywania akcji");
    }

    public override void OnActionExecuted(ActionExecutedContext context)
    {
        // Kod wykonywany po akcji
        Console.WriteLine("Akcja wykonana");
    }
}

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

W ten sposób filtry akcji pomagają wprowadzić logikę przekrojową w obsługę żądań.