ViewBag and DynamicObject in ASP.NET MVC

ViewBag is used in ASP.NET MVC to pass data from the controller to View . It is a dynamic object and is a member of the Controller class.

Any dynamic property with its value can be assigned and later be used to retrieve it in the View.

Below is a sample code snippet on the usage of the ViewBag to store the ApplicationTitle and later retrieve it in the View

Controller

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.Mvc;

namespace MvcApplication1.Controllers

{

public class EmployeeController : Controller

{

public ActionResult Index()

{

ViewBag.ApplicationTitle = "AbundantCode App";

return View();

}

}

}

View

@{

ViewBag.Title = "Index";

}

<h2>@ViewBag.ApplicationTitle</h2>

@Html.Label("AbundantCode.com - a Programming Directory");