Junior — Middle
İdarəedicinin funksionallığını əlavə olaraq necə genişləndirmək olar?
sobes.tech Süni İntellekt
AI-dan cavab
C# dilində nəzarətçilər (məsələn, ASP.NET Core-da) müxtəlif üsullarla genişləndirilə bilər:
- İrsi: əsas nəzarətçidən miras alan və metodları əlavə edən və ya yenidən yazan sinif yaradın.
- Filtrlər:
ActionFilter,AuthorizationFilterkimi filtr atributlarından istifadə edərək nəzarətçinin hərəkətlərinin əvvəlində və ya sonunda məntiq əlavə edin. - Middleware: nəzarətçiyə çatmadan əvvəl sorğuları işləyən aralıq proqram əlavə edin.
- Genişləndirmə metodları: nəzarətçi və ya onun əsas sinfi üçün genişləndirmə metodları əlavə edin.
- Asılılıqların injeksiyası: funksionallığı genişləndirən əlavə xidmətləri qoşun.
Filtr istifadəsinə nümunə:
public class LogActionFilter : ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext context)
{
// Əməliyyatdan əvvəl məntiq
base.OnActionExecuting(context);
}
}
[LogActionFilter]
public class MyController : Controller
{
public IActionResult Index()
{
return View();
}
}