如何使用 ASP .Net MVC C# 中的 ViewBag?


ViewBag 使用 C# 4.0 中引入的动态特性。它允许动态地向对象添加属性。在内部,它是由 ControllerBase 类的一个动态类型属性,后者是 Controller 类的基类。

ViewBag 仅将数据从控制器传输到视图,反之则不然。如果发生重定向,ViewBag 值将为 null。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>

输出

更新于:2020 年 9 月 24 日

3K+ 浏览量

开启你的 事业

完成课程并获得认证

开始
广告