2013-11-27 62 views
-1

這是我的控制器如何從Viewbag mvc4顯示數據?

public ActionResult Index() 
    { 
     var data = (from o in db.aspnet_Users 
          from q in db.aspnet_Profile 
          where 
          o.UserId == q .UserId 
          select new{ 
           o.UserId, 
           o.UserName, 
           q.Address, 
           q.Email, 
           q.Phone, 
           q.Mobile, 
           q.SocialID,         
          } 
         ).ToList(); 
     ViewData["Allprofile"] = data; 
     return View(); 
    } 

,我想顯示在表視圖中的數據,因爲從數據庫中生成的模型沒有代碼第一次,所以我」有顯示在一個視圖中2分貝模型問題試着用ViewData顯示數據有什麼幫助?

+1

創建一個視圖模型並傳遞它,而不是使用viewbag或viewdata – Satpal

回答

2

你爲什麼不在這裏使用ViewModel?你有點擊敗MVC的目的。 視圖模型將封裝您需要在視圖上顯示的數據。您將視圖模型傳遞給視圖 - 該視圖將接受強類型視圖。

由於多種原因,ViewData不應該用於重/複雜對象 - 性能爲一,但也沒有類型安全/強類型支持。

更改您的代碼,以便返回帶有需要向用戶顯示的數據的ViewModel。