首頁 >後端開發 >C#.Net教程 >在 ASP .Net MVC C# 中可以套用過濾器的等級是什麼?

在 ASP .Net MVC C# 中可以套用過濾器的等級是什麼?

WBOY
WBOY轉載
2023-09-04 13:49:021347瀏覽

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

在 ASP .Net MVC 應用程式中,過濾器可以套用於三個層級。

  • 操作方法層級
  • 控制器層級
  • 全域層級

#操作方法層級

在操作方法級別應用的過濾器僅適用於此級別 動作方法。

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

控制器層級

控制器層級過濾器套用於所有操作方法。以下過濾器是 適用於 HomeController 的所有操作方法,但不適用於其他操作方法 控制器。

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";
      }
   }
}

全域層級

全域層級篩選器在global.asax.cs的Application_Start事件中提供 使用預設的 FilterConfig.RegisterGlobalFilters() 方法建立檔案。全域過濾器 將應用於應用程式的所有控制器和操作方法。

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());
   }
}

以上是在 ASP .Net MVC C# 中可以套用過濾器的等級是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除