Junior — Middle
Чӣ гуна метавон функсионалияти контроллерро иловагӣ васеъ кард?
sobes.tech AI
Ҷавоб аз AI
Дар C#, контроллерҳоро (масалан, дар ASP.NET Core) метавон ба чанд роҳ васеъ кард:
- Мурас: классеро созед, ки аз контроллери асосӣ мерос мегирад ва методҳоро илова ё иваз мекунад.
- Филтрҳо: истифода баред атрибутҳои филтр (масалан,
ActionFilter,AuthorizationFilter) барои илова кардани логика пеш аз ё баъд аз иҷрои амалҳои контроллер. - Middleware: middleware-ро илова кунед, ки дархостҳоро пеш аз расидан ба контроллер коркард мекунад.
- Методҳои васеъкунӣ: методҳои васеъкунӣ барои контроллер ё класи асосии он илова кунед.
- Вурудоти вобастагиҳо: хизматрасониҳои иловагӣ илова кунед, ки функсионалиро васеъ мекунанд.
Масалан, истифодаи филтр:
public class LogActionFilter : ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext context)
{
// Логикаи пеш аз иҷрои амал
base.OnActionExecuting(context);
}
}
[LogActionFilter]
public class MyController : Controller
{
public IActionResult Index()
{
return View();
}
}