【发布时间】:2012-06-01 18:41:07
【问题描述】:
有没有办法重写显示不同视图的路径而不是 RedirectToAction 或 Redirect?我不希望 url 改变,但注意常规的 RewritePath 不能“返回”,所以动作实际上一直在跟踪它!
public ActionResult Register(){
if (somehting){
HttpContext.RewritePath(url);
// I want it to stop here, somehow, but it keeps going and expects a return statement
}
return View();
}
更新:我刚刚注意到,当我使用 stackoverflow 中循环的一个(使用 ProcessRequest)时,如果我运行 F5 它可以工作,但是当我直接访问时,它给了我“'HttpContext.SetSessionStateBehavior' 只能在 'HttpApplication.引发 AcquireRequestState' 事件。”这意味着我在 IIS 设置中遗漏了一些东西,它是什么? :s
[更新]为了明确这一点,我需要重写一个“url”而不是操作或视图名称,它必须是一个 url,就像好的旧 RewritePath(url)
【问题讨论】:
-
像 MVC 中的错误处理程序一样工作,它重写到错误页面
-
没有人得到答案,我仍然不知道如何在 MVC 上重写路径,在 ASP.NET 中真是太容易了!我很确定它与 MVC 中构建的对象的顺序有关,首先调用路由,然后调用控制器,然后是使响应刷新的东西,不允许重写路径生效......仍然,必须有一种方法
-
这个问题我该怎么办?没有答案,我应该删除吗?
标签: asp.net-mvc rewrite rewritepath