什么是ASP.NET MVC中的环境路由值及其工作原理?
我是ASP.NET MVC的新手.我读了
Professional ASP.NET MVC 3,它有两页谈论环境路线值,但我不明白它是如何工作的.我在谷歌搜索“asp.net mvc环境路线值”,但仍未找到任何解释它是什么或如何工作的文章或网站.
我想知道ASP.NET MVC中的“环境路由值”是什么?这个怎么运作? 解决方法
环境路由值与当前路由出站处理不需要的所有值相关.
让我们通过一个例子来解释 以此路线定义为例: routes.MapRoute( "Complex","{securityArea}/{permission}/{action}/{id}",new { controller = "Administration",action = "List",id = UrlParameter.Optional } ); routes.MapRoute( "Default","{controller}/{action}/{id}",new { controller = "Home",action = "Index",id = UrlParameter.Optional } ); 在这种情况下,环境路线值的场景将是: >用户执行一些管理,因此他当前在第一个路由定义服务的URL上: /users/change/apply/45 >他在此URL上编辑了某些表单并将数据发回. 现在,如果我们看一下#4中的URL生成.怎么了? >请求期间定义的路由值包括: > controller =“管理” >只需要前两个即可生成第二个默认路由的URL /Home/Index/?securityArea=Users&permission=Change 我们不希望这样. 这就是为什么他们被称为环境因为他们只是*挂在请求中的孤儿.这是我对环境路线值的解释.希望以一种可以理解的方式解释. 我还写了一篇关于在一个of my blog posts中删除这些环境值的文章,其中我提供了一个自定义路由类来执行此删除操作. 如第232页所述 您链接的书中的环境路由值也指出站路由处理,但它将环境值称为我们不需要为出站路由处理提供的值,因为它们将从当前值中获取(即控制器和操作可能为很好的环境值). 虽然书中没有谈到我在上面的答案中概述的环境路线值的问题.所有定义的路由值都可以是环境值,当我们没有意识到路由的工作原理时,它们可能会导致问题 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – ASP.NET MVC 5和HTML 5根据W3C规范形成属性
- ASP.NET如何知道单击哪个Button以引发其事件
- asp.net-mvc – 分页助手asp.net mvc
- asp.net-mvc – 在asp.net mvc中,单个项目与多个项目实现的
- ASP.NET Ajax客户端框架无法加载.将ScriptManager放在空白页
- asp.net – 为什么IFormFile显示为null,我该如何解决?
- asp.net-mvc-4 – ASP.NET MVC 4.0 RC和Newsoft.Json
- asp.net-mvc – 此模板试图加载组件程序集Microsoft.Visual
- asp.net – 通过邮件发送wcf服务消费表单数据
- asp.net-mvc – 如何从ASP.NET MVC中的JSONResult方法重定向
- asp.net-mvc – 在操作过滤器上使用缓存数据,以避
- asp.net-mvc – ASP.NET MVC:HTTPContext和依赖
- 日志记录 – ASP.NET MVC 4 Web Api:诊断功能
- asp.net-mvc-3 – MVC 3客户端验证,模型绑定十进
- 循环遍历ASP.NET缓存对象中的键
- [ASP NET MVC] 使用ReportViewer执行用户端报表定
- asp.net – 空白WebResource.axd
- asp.net-mvc-3 – 数据注释MVC3必需属性
- asp.net-mvc – 为什么@Using Html.BeginForm中的
- asp.net-mvc-3 – 如何将int数组传递给RouteValu