我正在使用來自不同實體的數據以及顯示當前日期的MVC應用程序。我想從控制器傳遞這些數據來查看。我應該創建一個實體來存放其他實體嗎?EF 4.1中的多個實體
0
A
回答
0
我會做的是創建一個ViewModel,它只保存視圖的特定信息,而不是整個實體。
1
您可以製作一個視圖模型,並將此視圖模型中的所有內容放入視圖中。
public class MyViewModel
{
Entity1 Ent{get;set;}
Entity2 Ent2{get;set;}
DateTime CurrentDate{get;set;}
}
public ActionResult index()
{
MyViewModel model = new MyviewModel();
model.Ent = new Entity1();
model.Ent2 = new Entity2();
model.CurrentDate = DateTime.Now;
return View(model)
}
您的視圖現在必須接受VieModel而不是db生成的實體。鑑於你可以訪問像
<%:Model.Ent1.SomeProperty%>
<%:Model.CurrentDate%>
<%:Model.Ent2.SomeProperty2%>
0
你真的需要一個單獨的實體嗎?我得到的是爲什麼不創建一個匿名對象,它返回所需的實體或只是所需的屬性。每個數據場景都有一個實體可能會出現潛在的問題。
相關問題
- 1. EF 4.1中的POCO實體和IsLoaded()
- 2. 在多對多中添加相關實體(EF 4.1)
- 3. 單個實體的EF多對多
- 4. EF 4.1:升級後的錯誤映射一個實體到多個表
- 5. 實體框架4.1代碼優先:多對多ICollection只有一個實體
- 6. EF 4.1中的多對多關係
- 7. EF 4.1單個類中的多個多對多關係
- 8. 另一個多對多的複雜性 - 實體框架4.1 DbContext
- 9. 在Entity Framework中將多行組合到一個實體中4.1
- 10. 公開RIA服務SP1和EF 4.1中的關聯實體POCO
- 11. EF 4.1:在插入父代之前替換一個子實體
- 12. 實體框架中的多重結果4.1代碼優先
- 13. EF 4.1一對多關係
- 14. EF 4.1:
- 15. 從LinqToSQL(或EF)返回多個實體
- 16. 實體框架4.1 - EFTracingProvider
- 17. 實體框架4.1 Poco類避免多個數據庫往返
- 18. 實體框架4.1堅持一個getter
- 19. 實體框架4.1代碼優先:單列外鍵到多個實體
- 20. 問題與包括基於抽象的實體(EF 4.1)財產
- 21. EF 4.1如何獲得一個實體的第一個關鍵 - 複合
- 22. EF 4.1層疊在實體之間的兩個方向上兩個關係
- 23. EF中的(1到多個)中的級聯實體
- 24. EF 4.1代碼第一多個一個一對多的關聯
- 25. 實體框架4.1的實體
- 26. 用EF 4.1在LINQ查詢中急切加載一個實體ObjectContext
- 27. 多個父實體首先在EF代碼中有一個子實體
- 28. EF 4.1代碼第一次:多對多
- 29. CTP5 vs release 4.1 EF多對多關係
- 30. 從兩個實體EF
@adeel:我應該把邏輯從db中獲取數據並在viewmodel中填充entities/viewmodel? – DotnetSparrow 2011-03-30 08:30:37
@DotnetSparrow你應該把你的控制器的Action方法中的邏輯。這並不意味着你直接在控制器中訪問數據庫對象。你應該創建一個將對象返回給調用代碼的圖層。如果您還不熟悉它,請參閱存儲庫模式 – 2011-03-30 09:18:53