我有一個頁面「ViewUser」。這種結構Html.RenderAction在RedirectToAction()之後失敗頁面
//display something about the user
@{Html.RenderAction("UpdateUser", new { UserId = @Model.UserId });}
//display some more stuff
在爲UpdateUser兩個控制器方法我有
public ActionResult UpdateUser(int UserId){//populate form vars
[HttpPost]
public ActionResult UpdateUser(User u)//
// code to update the user
return RedirectToAction("ViewUser", new { User = u.UserId });
當我打開網頁,它工作正常我看到我的用戶數據,並在UpdateUser兩個表格的日期。 但是,當我更新用戶數據並從UpdateUser重定向到ViewUser頁面時,我得到 「子操作不允許執行重定向操作。」
但是再次手動打開頁面顯示更新成功。 據我瞭解,瀏覽器應該爲所有事情執行一個新的GET,所以我不明白爲什麼它適用於手動刷新,但是當UpdateUser返回重定向時不行。
謝謝JotaBe。那麼,我怎樣才能將ViewUser作爲非子操作返回?這種模式有什麼問題嗎?我覺得這很自然嗎? – user2472565