2012-03-29 6 views
2

Ich benutze ViewBag.Message mit der gleichen Nachricht mehrmals in die Methoden auf dem Controller. Es ist möglich, ViewBag.Message auf der Oberseite der Klasse zu deklarieren, so kann in der gesamten Steuerung verwendet werden, ohne den Code zu wiederholen?Declare ViewBag auf Controller

Antwort

3

Angenommen Razor Syntax können Sie dies mit erreichen.

@{string pageMessage = ViewBag.Message.ToString();} 

dann ist pageMessage eine lokale Variable auf der Seite zur Verfügung, zum Beispiel:

<h1>@pageMessage</h1> 

EDIT

ViewBag ist ein dynamisches Objekt, das ein Mitglied der Controller-Basisklasse ist so um dies nur einmal im gesamten Controller anzugeben, könnten Sie etwas in Ihren Controller-Konstruktor einfügen.

public class MyController : Controller 
{ 
     public MyController() 
     { 
      ViewBag.ViewTime = DateTime.Now.ToString(); 
     } 

     // rest of controller code 
} 
+0

Ich spreche über den Code auf dem Controller, nicht auf der Ansicht – Gradile