ViewBag
public ActionResult About()
{
ViewBag.Message = "Your application description page.";
List<string> colors = new List<string>();
colors.Add("Red");
colors.Add("blue");
ViewBag.Listcolors = colors;
return View();
}
View
@{
ViewBag.Title = "About";
}
<h2>@ViewBag.Title.</h2>
<h3>@ViewBag.Message</h3>
<p>Use this area to provide additional information.</p>
<ul>
@foreach (var color in ViewBag.ListColors)
{
<li>@color</li>
}
</ul>
效果圖

ViewData
public ActionResult About()
{
ViewBag.Message = "Your application description page.";
List<string> colors = new List<string>();
colors.Add("Red");
colors.Add("blue");
ViewData["ListColors"] = colors;
ViewData["DatetimeNow"] = DateTime.Now;
return View();
}
View
@{
ViewBag.Title = "About";
}
<h2>@ViewBag.Title.</h2>
<h3>@ViewBag.Message</h3>
<p>Use this area to provide additional information.</p>
<ul>
@foreach (var color in ViewData["listColors"] as List<string>)
{
<li>@color</li>
}
</ul>
<p>@ViewData["DatetimeNow"]</p>
效果圖

ViewData與ViewBag的區別
1、ViewData是字典類型,賦值方式用字典方式,通過key值讀取對應的value,ViewData[“myName”]
2、ViewBag是動態類型,使用時直接添加屬性賦值即可ViewBag.myName
3、ViewBag和ViewData只在當前Action中有效,等同於View
4、ViewData和ViewBag中的值可以互相訪問,因為ViewBag的實現中包含了ViewData
