ViewBag
является членом базового класса контроллера, поэтому вы можете обращаться к нему любым методом.Таким образом, вы можете настроить общую функцию, которая заполняет ее, и затем вызывать ее из реальных методов действия:
private void PopulateViewBag() {
ViewBag.SomeThing = SomeOtherThing();
}
Методы на контроллере не имеют быть действиями, это простокласс в конце концов.