MVC:返回URL错误的视图

本文关键字:视图 错误 URL 返回 MVC | 更新日期: 2023-09-27 18:03:15

MVC newbee在这里。我有一个mvc项目与主视图(Index.cshtml)。从这个视图可以转到CreateRemark。cshtml视图。您可以在此视图上创建并保存注释。在POST操作中,我有逻辑将数据持久化到数据库,然后我想再次呈现Index视图。

我在动作CreateRemark的末尾这样做:

Return View("Index");

我期望我的URL看起来像localhost/或localhost/Index。但它一直说localhost/CreateRemark?id=123,而它实际上呈现的html是在索引视图。它渲染错误虽然(我还没有完全调查,但它错过了所有的图像在按钮和分层网格错过了第二级),我想我可以解决这个问题,确保我直接最终用户在正确的MVC方式索引视图。我想我做错了。

顺便说一下,GET/POST操作Index和CreateRemark都在同一个Home控制器中。我想稍后我想要一个备注控制器,但还没做。对不起。谁能给我指个正确的方向?谢谢你的帮助。

MVC:返回URL错误的视图

您只是从相同的控制器动作返回不同的视图,因此URL将保持不变。

如果你只是想让相同的操作发生,如果用户调用索引操作使用

  return RedirectToAction("Index");
http://msdn.microsoft.com/en-us/library/system.web.mvc.controller.redirecttoaction%28v=vs.108%29.aspx

url是用户导航到的url。如果他们导航到那个页面(我假设在"From this view you can go to the…"位),那么就是url

您在Return View("Index")中提供的字符串与url没有任何关系;它只是告诉视图引擎要使用哪个视图文件。此时改变URL的唯一方法是返回一个重定向到索引action/route:

return RedirectToAction("Index");