如果我有一個控制器,並且想根據我的條件邏輯返回一個視圖,那有可能嗎?我有不同類型的模型,我想插入到一個視圖取決於我的條件邏輯(如果語句)我可以這樣做嗎?我該怎麼做在控制器中返回不同的視圖
6
A
回答
16
當然,返回視圖()接受視圖名稱作爲其第一個參數。只需指定一個不同的視圖。
如果你有不同的模型進入同一個視圖,可以嘗試合併它們,創建一個容器模型(每個模型類型一個屬性,然後是一個枚舉,以便視圖知道要呈現的內容),使用dynamic視圖中的模型,或者爲每個模型創建一個視圖。
第一個和最後一個將是我的首選,但它取決於具體情況。
2
你可以做這樣的事情在你的控制器(這是尋找如果用戶autheticated爲例)
if (Request.IsAuthenticated)
return View("View1", new AuthenticatedViewModel(myValues1));
else
return View("View2", new AnonymousViewModel(myValues2));
相關問題
- 1. 返回不同視圖ASP.NET MVC中的相同控制器
- 2. 如何在不同的控制器中返回一個視圖
- 3. 從MVC控制器返回數據返回相同的視圖
- 4. 控制器不返回視圖
- 5. 從MVC控制器返回不同的視圖
- 6. 從一個視圖返回到不同的控制器
- 7. 控制器搜索視圖,而不是返回不同的視圖方式
- 8. 在不同視圖控制器中的相同視圖?
- 9. 解除視圖控制器不會返回到前一個視圖控制器
- 10. 當返回同一控制器的不同視圖時URL保持不變
- 11. 從控制器返回部分視圖?
- 12. 刷新視圖控制器返回
- 13. 返回主視圖控制器?
- 14. 視圖控制器委託返回無
- 15. 返回根視圖控制器(storyboard)
- 16. 模態視圖控制器返回
- 17. 返回到父視圖-UINavigation控制器
- 18. 全局變量在不同視圖控制器中使用時返回nil值
- 19. 如何回彈到不同導航控制器中的視圖?
- 20. 不同視圖的Ajax回發沒有複製控制器
- 21. 從控制器返回不同類型
- 22. 在從控制器返回的視圖中顯示數據
- 23. 在視圖中訪問控制器返回的JSON
- 24. 在我的視圖控制器中,代表總是返回零
- 25. Manuel segue'Show'在返回父視圖控制器時不調用ViedDidload?
- 26. 在路由而不是控制器上返回視圖
- 27. 如何從不同的項目調用控制器動作,不返回視圖
- 28. UIPageViewController和不同的視圖控制器
- 29. 從不同的視圖控制器打開相同的視圖
- 30. 集合視圖控制器崩潰並且不返回圖像