В качестве продолжения идея ViewBag (и ViewData) заключается в том, что вы можете хранить пары «ключ-значение» и легко получать к ним доступ в представлении.
С помощью ViewData вы ссылаетесь на следующие вещи:
ViewData["SomeKey"] = someObject;
Если вы хотите сделать то же самое, используя вместо этого ViewBag (который обеспечивает обертывание вокруг словарной конструкции ViewData и делает ее немного менее многословной и немного более читаемой), вы ссылаетесь на такие вещи:
ViewBag.isAdmin = true;
и может проверить их, как указано выше, например:
if (ViewBag.isAdmin)
{
// do stuff
}
Обычно я использую синтаксис ViewBag, когда использую эту конструкцию, но они действительно ссылаются на один и тот же материал. Так что если вы сделали что-то подобное за пределами View:
ViewData["isAdmin"] = true;
вы могли бы сослаться на это так, если бы вы были так склонны:
ViewBag.isAdmin
или наоборот.
Еще немного подробнее о концепции.