asp.net-mvc - ASP.NET MVC 从 URL 获取路由值

标签 asp.net-mvc routing

我想弄清楚 UrlReferrer 的路由值是什么在 Controller Action 中。

我无法弄清楚传入 URL 在 MVC 管道的哪个部分被转换为 RouteValues,我想要实现的目标接近于此。

最佳答案

您需要调用RouteTable.Routes.GetRouteData带有 mock 的HttpContextBase它会在其 Request 中返回您的 URL .

路由在内部使用请求的 AppRelativeCurrentExecutionFilePath 匹配。 .
但是,此功能未公开,因此您需要传递 HttpContextBase .

您需要创建一个 HttpContextBase返回 HttpRequestBase 的类请求属性中的实例。HttpRequestBase类需要返回你的路径,以 ~/ 开头,在其AppRelativeCurrentExecutionFilePath属性(property)。

您不需要实现任何其他属性,除非它们被 IRouteConstraint 使用。 s。

有人已经写过这个:Creating a RouteData instance from a URL

关于asp.net-mvc - ASP.NET MVC 从 URL 获取路由值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4993990/

相关文章:

asp.net-mvc - ASP.NET MVC,查找模型是否发生变化

c# - MVC Owin Cookie 身份验证 - 覆盖 ReturnUrl 生成

asp.net-mvc - View 中的条件语句是否是坏消息?

ruby-on-rails - 如何使用 Minitest 测试 Rails 路由?

email - 使用 mailgun 进行邮件路由

asp.net-mvc - 在配置了虚拟目录的 MVC 中显示图像时出现问题

c# - System.Security.Cryptography.KeyDerivation 未在 VS Community 2015 版本中被识别。 14.0.2

c# - 提交后 IEnumerable 属性为空

ruby-on-rails - 使用 Rails 5(API 标志)并且尽管声明了路由但没有路由错误

asp.net-mvc - ASP.NET MVC : Namespaces in routes