在 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中文網其他相關文章!