2013-06-03 19 views
0

我正在做一個小項目,這是我第一次使用MVC 4.0與Entity Framework 5 + Web API。MVC 4.0 with Entity Framework 5 - 如果您只使用視圖,是否需要將子對象添加到模型中?

我只在我的模型中引入了1個視圖(vw0),我想查詢此視圖以將其顯示在我的網頁上。

此視圖是其他2個視圖的聯合。

SELECT * FROM vw1 
UNION ALL 
SELECT * FROM Vw2 

vw0帶回超過100萬條記錄。爲了我只是測試這一點,我試着這樣做:

// GET: /Data/ 
     public ActionResult Index() 
     { 
      return View(db.Data_vw_0.ToList().Take(5)); 
     } 

然而,每次我試圖去時間:

*/Data/ 

我收到以下錯誤:

OutOfMemoryException was unhandled by user code 

An exception of type 'System.OutOfMemoryException' occurred in System.Data.Entity.dll but was not handled in user code. 

我不知道我在這裏錯過了什麼。我對這件事很陌生,所以我需要一隻手。

我只是試圖在網頁上顯示數據。

我能夠正常顯示數據,如果我使用數據庫表,但出於某種原因與此視圖,它不起作用。

如果我直接進入SQL並嘗試運行它,那麼該視圖會工作。

我的問題是,是否需要添加作爲母視圖(vw0)的視圖以及它們相關的表的視圖,還是隻需將ONE視圖添加到我的模型(vw0) ?

+0

也許你得到這個例外,因爲EF無法從db中返回所有數據,這些數據非常大。 –

+0

我會如何通過?我試圖做ToList()。拿(5),它仍然給我那個錯誤... –

回答

0

答案是否定的,我不需要添加與視圖相關的表格。我決定使用實際的表格並查詢它們而不是使用視圖 - 它們給我提供了太多問題。

相關問題