Sobes.tech
Junior — Middle

Kontrolörün işlevselliği nasıl ek olarak genişletilebilir?

sobes.tech yapay zeka

AI'dan gelen yanıt

C#'ta denetleyiciler (örneğin, ASP.NET Core'da) birkaç şekilde genişletilebilir:

  • Kalıtım: Temel denetleyiciden türeyen ve metodları ekleyen veya geçersiz kılan bir sınıf oluşturmak.
  • Filtreler: Denetleyici eylemlerinin öncesinde veya sonrasında mantık eklemek için filtre öznitelikleri (örneğin, ActionFilter, AuthorizationFilter) kullanmak.
  • Ortam Yazılımı (Middleware): Denetleyiciye ulaşmadan önce istekleri işleyen ara yazılım eklemek.
  • Genişletme Metodları: Denetleyici veya temel sınıfı için genişletme metodları eklemek.
  • Bağımlılık Enjeksiyonu: İşlevselliği genişleten ek servisleri bağlamak.

Filtre kullanımına örnek:

public class LogActionFilter : ActionFilterAttribute
{
    public override void OnActionExecuting(ActionExecutingContext context)
    {
        // Eylem öncesi mantık
        base.OnActionExecuting(context);
    }
}

[LogActionFilter]
public class MyController : Controller
{
    public IActionResult Index()
    {
        return View();
    }
}