Junior — Middle
Explicați conceptul de utilizare a filtrelor în ASP.NET și rolul lor în procesarea cererilor.
sobes.tech AI
Răspuns de la AI
În ASP.NET, filtrele sunt componente care permit executarea logicii suplimentare înainte sau după procesarea unei solicitări HTTP de către controler. Ele ajută la separarea sarcinilor transversale, cum ar fi autorizarea, jurnalizarea, gestionarea erorilor și caching-ul.
Rolul filtrelor în procesarea solicitărilor:
- Permite integrarea de cod reutilizabil fără a modifica logica de afaceri.
- Controlează ciclul de viață al solicitării, de exemplu, verificând drepturile de acces înainte de a executa o acțiune.
- Pot modifica datele de intrare sau rezultatul răspunsului.
Exemplu de utilizare a unui filtru de autorizare:
public class CustomAuthorizationFilter : Attribute, IAuthorizationFilter
{
public void OnAuthorization(AuthorizationFilterContext context)
{
if (!context.HttpContext.User.Identity.IsAuthenticated)
{
context.Result = new UnauthorizedResult();
}
}
}
// Aplicarea filtrului la controler sau acțiune
[CustomAuthorizationFilter]
public IActionResult SecureAction()
{
return View();
}