Pet*_*nce 7 asp.net-mvc redirect routing referer
我的控制器上有一些POST动作,它们来自一对GET动作.验证失败时,我想呈现POST来自的操作的视图.例如:
〜/ accounts POST到〜/ accounts/disable - 渲染验证错误的"索引"视图〜/ accounts/profile POST到〜/ accounts/disable - 渲染验证错误的"profile"视图
我可以从服务器变量中获取referer(sic)并解析它以找出操作,但是希望有一些内置的内容可以实现我想要的,或者其他人已经完成了我可以做到的事情.
看起来ControllerContext.RouteData属性只有当前请求的信息,而不是引用(sic)请求......?
我正在使用ASP.NET MVC测试版.
MVC Contrib 在 String 上包含一个扩展方法来获取路由(具体来说,在此处)。理论上这会让你做
RouteData referrer = Request.UrlReferrer.PathAndQuery.Route();
Run Code Online (Sandbox Code Playgroud)
或者,当然,将其包装在 HttpRequest 的扩展方法中,这样你就可以这样做
RouteData referrer = Request.ReferrerRoute();
Run Code Online (Sandbox Code Playgroud)
然而,它用于单元测试,并使用Rhino Mocks 来创建GetRouteData() 所需的HttpContextBase。好消息是,它似乎很少进行模拟,因此如果您创建自己的从 HttpContextBase 派生的 FakeHttpContext 类,您可能能够避免 Rhino Mocks。
| 归档时间: |
|
| 查看次数: |
2064 次 |
| 最近记录: |