大师们,
我在路由数据绑定方面遇到了一个非常简单的问题。
请参考以下代码。
公共类 RemoveDashRouteHandler : MvcRouteHandler
{
protected override IHttpHandler GetHttpHandler(RequestContext requestContext)
{
requestContext.RouteData.Values["controller"] = ((string)requestContext.RouteData.Values["controller"]).Replace("-", String.Empty);
return base.GetHttpHandler(requestContext);
}
}
在这里我正在注册路线
路线.MapRoute (
name: "Categorywise",
url: "{action}-{controller}/{nm}/{p}"
).RouteHandler = new RemoveDashRouteHandler();
然后我做了一个像这样的简单模型
公共类参数
{
public string nm { get; set; }
public string p { get; set; }
}
现在的问题是,当我点击 URL 时: http://{mylocalip}:52730/Authority-cars/1/1 我总是得到所有参数 null
并且用下面的方法重写同样的效果很好。
公共 ActionResult 授权(字符串 nm,字符串 p)
{
ViewBag.ActionMethod = "Autority";
return View("~/Views/Cars/Index.cshtml", new Params { nm = nm, p = p });
}
我在做什么错。请帮忙。
提前致谢