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>
ผลลัพธ์