1
我必須實現自定義授權過濾器。ASP.NET MVC - 如何在自定義授權過濾器中獲取命名空間?
(用於檢查被授權,需要命名空間,控制器名稱和動作名稱)
我不設法獲取命名空間。這裏是我的代碼:
ExampleController.cs:
namespace ExampleProject.Controllers
{
public class ExampleController : Controller
{
[CustomAuth()]
public string Index()
{
return "OK";
}
}
}
CustomAuthFilter.cs:
namespace ExampleProject.Infrastructure.Filters
{
public class CustomAuthAttribute : AuthorizeAttribute
{
protected override bool AuthorizeCore(HttpContextBase httpContext)
{
string currentNamespace = string.Empty;
string currentController = string.Empty;
string currentAction = string.Empty;
var routeData = httpContext.Request.RequestContext.RouteData;
currentController = routeData.GetRequiredString("controller"); //Example
currentAction = routeData.GetRequiredString("action"); //Index
currentNamespace = How??????? // ExampleProject.Controllers
...
}
}
}
我怎樣才能獲得的命名空間?
非常感謝提前。
你想用命名空間做什麼? – ssilas777 2013-03-02 10:40:01