ViewBag ใช้คุณลักษณะไดนามิกที่นำมาใช้ใน C# 4.0 อนุญาตให้ anobject เพิ่มคุณสมบัติแบบไดนามิกเข้าไปได้ ภายในเป็นคุณสมบัติประเภทไดนามิกของคลาส ControllerBase ซึ่งเป็นคลาสพื้นฐานของคลาสคอนโทรลเลอร์
ViewBag จะถ่ายโอนข้อมูลจากผู้ควบคุมเพื่อดูเท่านั้น ไม่ใช่ในทางกลับกัน ค่า ViewBag จะเป็นโมฆะหากมีการเปลี่ยนเส้นทาง ViewBag สามารถตั้งค่าและรับค่าไดนามิกและสามารถเพิ่มฟิลด์เพิ่มเติมจำนวนเท่าใดก็ได้โดยไม่ต้องแปลงเป็นประเภทที่เข้มงวด
การจัดเก็บข้อมูลใน ViewBag -
ViewBag.Counties = countriesList;
กำลังดึงข้อมูลจาก ViewBag −
string country = ViewBag.Countries;
คอนโทรลเลอร์
ตัวอย่าง
using System.Collections.Generic;
using System.Web.Mvc;
namespace DemoMvcApplication.Controllers{
public class HomeController : Controller{
public ViewResult Index(){
ViewBag.Countries = new List<string>{
"India",
"Malaysia",
"Dubai",
"USA",
"UK"
};
return View();
}
}
} ดู
@{
ViewBag.Title = "Countries List";
}
<h2>Countries List</h2>
<ul>
@foreach(string country in ViewBag.Countries){
<li>@country</li>
}
</ul> ผลลัพธ์
