3
A
回答
6
在我看來,viewmodels是特定於任何應用程序將使用它們,而存儲庫將返回所有應用程序通用的模型。所以我認爲視圖模型應該在網站中創建,從存儲庫返回的一個通用模型中創建,而不是將知識庫與佈置如何佈置有關。
3
嚴格地說你的資料庫應該返回域對象
庫:「使用集合類接口,用於訪問域對象的域和數據映射層之間起中介作用」
福勒(POEAA)
0
庫應該是在你的域和UI之間 - 庫應該知道也不關心你的UI層 - 這樣你就可以得到最好的再利用和脫鉤也越好。
1
ViewModels應該在控制器中實例化並傳遞給強類型視圖。通常,ViewModel將包含呈現視圖所需的多種模型類型。這裏有一個簡單的例子:
說你有兩個模型對象訂單和客戶
你想在頁面的頂部和訂單在該客戶的索引視圖網格顯示客戶詳細信息。
public class CustomerModel
{
//properties
}
public class OrderModel
{
//properties
}
public class CustomerVM
{
public CustomerModel customer { get; set; }
public IEnumerable<OrderModel> orders { get; set; }
}
//and in your controller
public class CustomerController : Controller
{
public ActionResult Index(int id)
{
CustomerVM vm = new CustomerVM();
vm.customer = CustomerRepository.GetCustomer(id);
vm.orders = OrdersRepository.GetOrdersForCustomer(id);
return View(vm);
}
}
相關問題
- 1. ViewModels應該放在哪裏?
- 2. ASP.net MVC:我應該在哪裏創建/聲明實體鍵?
- 3. 發佈操作在asp.net中創建MVC
- 4. 我應該在哪裏創建pthread
- 5. viewModel應該在哪裏創建?
- 6. MVP,類應該在哪裏創建?
- 7. 應該在哪裏創建virtualenvs?
- 8. ASP.Net MVC你在哪裏從實體轉換爲ViewModels?
- 9. 應該在哪裏工作?
- 10. 在ASP.NET MVC中保留ViewModels
- 11. 我應該在哪裏將DOM操作放在AngularJS組件中?
- 12. 我應該在哪裏在asp.net的MVC網站
- 13. 我應該在哪裏應該聲明HTML幫助器在ASP.NET MVC 3
- 14. MVC中的ViewModels和對象操作
- 15. 如何在MVC中創建複雜的ViewModels ASP.NET
- 16. ASP.NET MVC |我應該在哪裏放置DataAnotations
- 17. ASP.NET MVC文檔在哪裏?
- 18. 我應該在哪裏創建Windows服務中的組合根?
- 19. 哪裏應該在web api控制器中創建實例
- 20. 驗證ASP.NET MVC中的ViewModels
- 21. beans.xml應該放在哪裏?
- 22. VS2008 ASP.net .PDB創建在哪裏?
- 23. 在Ubuntu中,我應該在哪裏創建我的Eclipse工作區?
- 24. 的ViewModels這裏應該放置
- 25. 我應該在哪裏創建並獲取我將用於ASP.NET MVC應用程序的Cookie的值?
- 26. 執行IEnlistmentNotification時應該在哪裏執行操作?
- 27. 應該在哪裏定義對實體的操作
- 28. 操作數應該包含1列在哪裏有
- 29. 我應該在ASP.Net MVC 3應用程序中創建工作單元實例?
- 30. 使用asp.net mvc之前應該從哪裏開始?
如果兩個應用程序可以使用相同的ViewModel會怎樣?你會爲VM創建一個專門的項目嗎? – heltonbiker