我怎麼能發送從控制器配備了兩個模型中使用相同的操作來查看通行證內控制器多參數在MVC3剃刀查看視圖引擎
0
A
回答
2
讓我們假設你的兩個型號爲MyModel和MyOtherModel的實例。
我能想到的兩個選項:
- 通行證爲MyModel的模式,並把MyOtherModel在ViewBag。
- 使用包含MyModel的屬性和包含MyOtherModel的另一個屬性創建類MyBigModel,並將MyBigModel作爲模型傳遞。
選項1實際上不是您理想的解決方案。由於您的模型應該涉及到你的觀點(這就是爲什麼我喜歡的名字視圖模型),我真的去選擇2
選項2應該是這樣的:
public class MyBigModel
{
public MyModel { get; set; }
public MyOtherModel { get; set; }
}
2
使用視圖模型 - 創建一個多個模型將同時包含模型,併發送,查看
public class MyCustomViewModel
{
public MyFirstModel First { get; set; }
public MySecondModel Second { get; set; }
}
並在控制器
public ActionResult Action()
{
MyFirstModel first = new MyFirstModel();
MySecondModel second = new MySecondModel();
MyCustomViewModel model = new MyCustomViewModel();
model.First = first;
model.Second = second;
return View(model);
}
一般來說,顧名思義,您應該爲應用程序中的每個視圖使用自定義ViewModel,然後使用AutoMapper等工具將這些視圖模型來回映射到域模型。視圖模型爲您創作視圖提供了極大的靈活性,因爲您可以在不改變域的情況下爲其提供任何形狀和形式。
+0
+1爲Automapper提供了很大的靈活性:) – Yasser
相關問題
- 1. MVC3剃刀視圖引擎
- 2. MVC3剃刀引擎
- 3. 在剃刀引擎mvc3 datepicker
- 4. MVC3剃刀遠程驗證 - 控制器參數始終爲空
- 5. 登錄查看密碼恢復在剃刀視圖引擎
- 6. Asp.net MVC3並行處理剃刀和視圖引擎
- 7. 在MVC3中使用JavaScript變量剃刀視圖引擎
- 8. 剃刀視圖引擎不搜索區域查看位置
- 9. Html.Partial在剃刀視圖引擎
- 10. 將MVC2 Helpers移動到MVC3剃鬚刀視圖引擎
- 11. 從視圖到控制器的MVC3剃刀傳遞模型
- 12. mvc3不同控制器的剃鬚刀視圖
- 13. WebAPI和剃刀視圖引擎
- 14. 剃刀引擎不能找到視圖
- 15. ASP.NET MVC剃刀視圖引擎
- 16. 剃刀視圖引擎分配問題
- 17. 用剃刀視圖引擎打印Html
- 18. ASP.Net MVC3 - 通行證剃刀標記作爲參數
- 19. MVC3剃刀視圖PopUps
- 20. 局部視圖MVC3剃刀
- 21. MVC3 /剃鬚刀控制器Ajax調用
- 22. Mvc3剃鬚刀張貼多個模型單控制器行動
- 23. 從視圖傳遞參數到控制器剃鬚刀
- 24. 如何在mvc3中將數據從剃鬚刀視圖傳遞給控制器?
- 25. mvc3的日期選擇器與剃刀視圖引擎無需使用jquery
- 26. ASP .NET MVC3剃刀彈出查看
- 27. 在MVC3中登錄剃刀視圖
- 28. 編輯查看模板剃刀視圖
- 29. ASP.NET MVC從aspx視圖引擎遷移到剃鬚刀視圖引擎
- 30. MVC3剃刀引擎執行/渲染順序
值得一提的是,選項1非常糟糕,不建議這樣做。 – archil
你說得對,我會補充一點。 –