asp.net mvc路由id参数
发布时间:2020-05-25 07:00:19 所属栏目:asp.Net 来源:互联网
导读:我在asp.net mvc上的一个网站上工作.我有路线 routes.MapRoute( Default, // Route name {controller}/{action}/{id}, // URL with parameters new { controller = Home, action = Index, id = UrlParameter.Op
|
我在asp.net mvc上的一个网站上工作.我有路线 routes.MapRoute(
"Default",// Route name
"{controller}/{action}/{id}",// URL with parameters
new { controller = "Home",action = "Index",id = UrlParameter.Optional }
// Parameter defaults
);
这是默认路由.我有一个方法 public ActionResult ErrorPage(int errorno)
{
return View();
}
现在,我想用http://something/mycontroller/Errorpage/1运行这个代码 这个方法有相同的参数名称是强制的吗?还是需要为这种情况创建单独的路线? 解决方法因此,您有一个名为errorno的参数,并且您希望它具有参数id的值.这显然是有约束力的问题.如何解决: >为模型绑定器创建一个类: public class ParameterBinder : IModelBinder
{
public string ActualParameter { get; private set; }
public ParameterBinder(string actualParameter)
{
this.ActualParameter = actualParameter;
}
public object BindModel(ControllerContext controllerContext,ModelBindingContext bindingContext)
{
object id = controllerContext.RouteData.Values[this.ActualParameter];
return id;
}
}
>为自定义模型绑定创建自定义属性: [AttributeUsage(AttributeTargets.Parameter)]
public class BindParameterAttribute : CustomModelBinderAttribute
{
public string ActualParameter { get; private set; }
public BindParameterAttribute(string actualParameter)
{
this.ActualParameter = actualParameter;
}
public override IModelBinder GetBinder()
{
return new ParameterBinder(this.ActualParameter);
}
}
>根据需要将新属性应用于您的动作参数: public ActionResult ErrorPage(
[BindParameter("id")]
int errorno)
{
return View();
}
现在你的errnoo会有这个值,它被传递给你的url的id. 注意:您可以从上述示例中删除参数id,如果您确定只需要为id解决问题. 离开这种方式将允许你绑定其他参数. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – ASP.net MVC – 显示模板集合
- 在asp.net之后的回发动作刷新页面
- .net – log4net – FileAppender在文件开头写入新条目
- asp.net-mvc – 如何从MVC控制器返回Json对象到视图
- ASP.NET中的网站或Web应用程序
- asp.net-web-api – 标题中的API密钥与swashbuckle
- asp.net-mvc – Asp.Net MVC Html助手扩展
- asp.net – 如何在Web应用程序中使用ServiceStack Redis来利
- asp.net-mvc – 覆盖控制器AuthorizeAttribute只有一个操作
- 如何在ASP.NET项目中正确引用JavaScript文件?
推荐文章
站长推荐
- asp.net-mvc – ASP.NET MVC – 能够处理数组的自
- 如何在ASP.NET MVC控制器(ActionResult)中更改返
- ASP.NET Master Pages等效于Java
- asp.net-mvc – Html.DisplayFor不发布值到控制器
- asp.net-mvc – 存储库模式:每个实体一个存储库
- asp.net – asp:ContentPlaceHolder和代码块问题
- asp.net-mvc – 看起来你忘了注册HTTP模块与Wind
- asp.net-mvc – MVC 4提供的反伪造令牌是为用户“
- asp.net-mvc – ASP.NET MVC – 在客户端缓存页面
- asp.net-web-api – 使用控制器上的Xml注释的ASP
热点阅读
