如果需要回發到原始控制器進行渲染和重定向的同一控制器,是否認爲是更好的做法?或者,如果從視圖跳轉到不同的控制器,它是否一樣?Asp.net mvc:從視圖回來
2
A
回答
3
我在控制器中創建兩個重載操作,一個使用HTTP GET呈現輸入表單,另一個使用HTTP POST處理表單發佈。事情是這樣的:
public ViewResult Foo()
{
return View();
}
[AcceptVerbs(HttpVerbs.Post)]
public ViewResult Foo(FormCollection form)
{
// process input
if (inputOK)
return RedirectToAction("Index");
return View();
}
這樣做的好處這種方式是,如果有一個錯誤,認爲被重新呈遞任何錯誤和驗證消息。如果成功,則會重定向到另一個操作,這樣可以避免用戶刷新頁面時瀏覽器上的重複發佈警告 - 請參閱Post/Redirect/Get on Wikipedia和blog entry by Stephen Walther。
還有其他方法可以使用FormCollection,例如一個簡單參數列表或綁定到一個對象。請參閱article by ScottGu。
2
我認爲被調用的動作應該包含在該動作的相關控制器中。如果視圖需要調用動作,它應該從相關的控制器調用它,而不一定是從其生成的控制器。
如果您有庫存控制器,您不想定義與管理相關的操作,即使庫存屏幕可能對其有管理操作(例如)。
相關問題
- 1. ASP.net MVC - 從視圖
- 2. ASP.NET MVC從視圖
- 3. asp.net mvc從根返回視圖
- 4. 從Asp.Net MVC 4返回視圖Web API
- 5. 返回在ASP.NET MVC中的視圖MVC
- 6. Asp.Net MVC呼叫從視圖
- 7. ASP.NET MVC - HttpException或返回視圖?
- 8. Asp.net MVC 3局部視圖回發
- 9. 返回視圖不工作 - ASP.NET MVC
- 10. ASP.NET MVC:返回視圖(ActionName,Model)
- 11. Asp.net MVC hijaxing返回視圖修復
- 12. 在ASP.NET MVC視圖
- 13. asp.net MVC返回actionresult視頻
- 14. ASP.NET MVC返回部分視圖爲完整視圖頁面
- 15. 在POST視圖後返回GET視圖失敗ASP.NET MVC
- 16. 從MVC 4視圖調用asp.net webservice
- 17. 從URL傳遞值到視圖ASP.NET MVC
- 18. ASP.NET MVC 4 - 從視圖更新模型
- 19. ASP.NET MVC從視圖中引用Html Helper
- 20. 如何從視圖asp.net-MVC-3
- 21. 從視圖調用方法ASP.NET MVC
- 22. 在ASP.NET MVC Core中從EF映射類返回列表視圖
- 23. asp.net mvc從發佈請求中返回帶ID的視圖
- 24. ASP.NET MVC路由從部分視圖返回用戶到原點
- 25. 從視圖返回的ASP.NET MVC布爾值是1或0
- 26. 從控制器返回Json數據到視圖ASP.NET MVC
- 27. ASP.NET MVC從視圖返回的空對象
- 28. 從MVC視圖
- 29. 如何從MVC視圖返回流?
- 30. Asp.Net Mvc 4從視圖模型生成視圖