如何从OnActionExecuting
过滤器方法中获取路线值。
我有以下两个建议,但我仍感到困惑:
ControllerContext
,这样您就可以访问RouteValues
filterContext.Controller.RouteValues
filterContext.Controller.RouteValues
我有例如方法:
public ActionResult Delete(string city, string street) {
//enter code here
}
如果我想获得城市和街道的价值,那么我该怎么做呢。对不起,如果它看起来像一个基本的问题,但我不知道如何访问上述。
答案 0 :(得分:9)
在这里,
protected override void OnActionExecuting(ActionExecutingContext filterContext)
{
var parameters = filterContext.ActionParameters;
var email = parameters["email"];
var city = parameters["city"];
}
答案 1 :(得分:1)
我认为您试图通过“在此处输入代码”来抢占某些控制器操作(例如Delete
):
protected override void OnActionExecuting(ActionExecutingContext filterContext)
{
string city = filterContext.ActionParameters["city"];
string street = filterContext.ActionParameters["street"];
// probably include this:
//base.OnActionExecuting(filterContext);
}