À quel niveau les filtres peuvent-ils être appliqués dans ASP .Net MVC C# ?

WBOY
Libérer: 2023-09-04 13:49:02
avant
1328 Les gens l'ont consulté

在 ASP .Net MVC C# 中可以应用过滤器的级别是什么?

Dans les applications ASP .Net MVC, les filtres peuvent être appliqués à trois niveaux.

  • Niveau de la méthode d'action
  • Niveau du contrôleur
  • Niveau global

Niveau de la méthode d'action

Les filtres appliqués au niveau de la méthode d'action ne s'appliquent qu'à ce niveau méthode d’action.

using System.Web.Mvc;
namespace DemoMvcApplication.Controllers{
   public class HomeController : Controller{
      [Authorize] //Action Method Level
      public string Index(){
         return "Index Invoked";
      }
   }
}
Copier après la connexion

Niveau du contrôleur

Les filtres au niveau du contrôleur sont appliqués à toutes les méthodes d'action. Les filtres suivants sont S'applique à toutes les méthodes d'action de HomeController mais pas aux autres contrôleur.

using System.Web.Mvc;
namespace DemoMvcApplication.Controllers{
   [Authorize] //Controller Level
   public class HomeController : Controller{
      public string Index1(){
         return "Index1 Invoked";
      }
      public string Index2(){
         return "Index2 Invoked";
      }
   }
}
Copier après la connexion

Niveau global

Des filtres de niveau global sont fournis dans l'événement Application_Start de global.asax.cs Créez le fichier à l'aide de la méthode FilterConfig.RegisterGlobalFilters() par défaut. filtre global Sera appliqué à tous les contrôleurs et méthodes d’action de l’application.

public class MvcApplication : System.Web.HttpApplication{
   protected void Application_Start(){
      AreaRegistration.RegisterAllAreas();
      FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
      RouteConfig.RegisterRoutes(RouteTable.Routes);
      BundleConfig.RegisterBundles(BundleTable.Bundles);
   }
}
public class FilterConfig{
   public static void RegisterGlobalFilters(GlobalFilterCollection filters){
      filters.Add(new HandleErrorAttribute());
      filters.Add(new AuthorizeAttribute());
   }
}
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal