【发布时间】:2017-08-21 14:16:29
【问题描述】:
我有一个 MVC 视图,用户可以在其中设置标志并将数据发布到控制器(发布因为我想隐藏查询字符串)
控制器完成工作后,我想重定向到网站主页,这是一个 aspx 页面(我的网站是混合 aspx 和 MVC)
有没有办法做到这一点?
这是我的看法
@model MessaggiVM
<form role="form" class="form-inline" method="post" action="Messaggi/VaiAllaHome">
<button id="btnHome">Vai alla pagina iniziale</button>
<div class="form-group">
<label for="nascondi">hiding</label>
<input id="nascondi" type="checkbox" name="nascondi" value="true" />
</div>
<input type="hidden" name="elencoPost" value="@Model.Posts" />
@*@Html.ActionLink("Messaggi", "VaiAllaHome", new { posts = Model.Posts} )*@
</form>
这是控制器
[HttpPost]
public RedirectResult VaiAllaHome(bool? nascondi = false, IEnumerable<Messaggio> elencoPost = null)
{
// do something
return Redirect(Url.Content("~/"));
}
当我运行此代码时,控制器操作执行没有错误,但重定向未完成,浏览器仍保留在视图上
其他问题是操作中的 elencoPost 参数为空,但我正在调查它
编辑
老实说,我正在考虑发布有关输入更改和切换按钮的数据以获取简单的链接
编辑 2:
找到原因:在 default.aspx 我有一个自动重定向到消息页面:(
【问题讨论】:
-
这些链接应该对您有所帮助:帖子:codeproject.com/Articles/639709/… 和重定向到 aspx:stackoverflow.com/a/12977284/3365113
-
试试
return Redirect("/SomePage"); -
我必须使用“~/”作为网站的根目录,我在反向代理和相对链接下无法工作
-
如果你尝试
return Redirect("~/")会发生什么? -
同样的,视图只是刷新了
标签: c# asp.net asp.net-mvc