Novirzīšana, pirms tiek izsaukts konkrēts pasākums

Lapas izveides datums :

kad jūs apmeklējat vietni, kuru veidojat ASP.NET MVC, URL un maršrutēšana izsauks atbilstošo kontrollera darbību, bet dažos gadījumos, iespējams, vēlēsities to novirzīt uz citu darbību vai lapu, pirms tiek izsauktas atbilstošās darbības.

Ja vēlaties, lai katra darbība tiktu novirzītu, varat izmantot RedirectResult vai RedirectToRouteResult, lai to atrisinātu, bet varat izmantot kontrolleri. Onactionizpildes apiešanas metodi, ja vēlaties novirzīt kopīgi pirms katras darbības nosaukums. Šī metode ir metode, kas tiek apstrādāta pirms katras darbības.

Ja vēlaties kontrolleri. Onactionizpildes metodi novirzīt:

public class MyController : Controller
{
  // 各アクションが呼ばれる前に呼ばれるメソッド
  public override void OnActionExecuting(ActionExecutingContext filterContext)
  {
    if (リダイレクトさせる条件)
    {
      filterContext.Result = new RedirectResult(url);
      return;
    }
  }
}

Ja iestatāt RedirectResult ar vietrādi URL ActionExecutingContext. Result, jūs novirzīt norādīto URL. Ja nav zara ar IF paziņojumu, novirzīšana tiek veikta visas darbības, kas pieder mērķa kontrolleri.

Varat arī iestatīt kopējo kontrollera klasi katrai kontrollera klases pamatklasei un ieviest Onactionizpildes metodi, lai koplietotu apstrādi ar vairākām kontrollera klasēm.

"ActionExecutingContext. Result" ir ActionResult tips, tādējādi var izmantot klases RedirectToRouteResult vai kontrolleri. RedirectToAction metodi.