Controller和View傳遞數據的幾種方式

  1. 使用ViewBag存儲數據,如ViewBag.time=2012/7/1,View中能夠直接用ViewBag("time")的方式取出數據。

  2. 使用ViewData存儲數據,存儲對象集合:

    var data = db.tb_Users.ToList();
    ViewData["data"] = data;
    return View();

    返回View的集合必定是要實現了IEnumerable接口的數據,在ViewPage中須要轉換合適的類型 如:spa

    @foreach (var item in ViewData["data"] as List<MVC_DEMO.tb_Users>)
    {
      @item.UserName <br />
    }對象

  3. 使用Model傳遞數據
    var data = db.tb_Users.ToList();
    return View(data);
    因爲須要在頁面中遍歷對象,因此View中須要引入相應的Model  @model List<MVC_DEMO.tb_Users> 數據便利的時候無需轉換
    @foreach (var item in Model)
    {
      @item.UserName <br />
    }注:在控制器View()方法中,傳遞實例化對象時,控制器就會將ViewDataDictionary類的Model屬性設置成爲須要被傳遞的對象;在視圖中只須要讀取ViewPage類中的Model屬性就能夠得到控制器中所設置的對象數據。
相關文章
相關標籤/搜索