mk-prg-net \net \asp \ mvc \views

Views

In MVC berechnet die Action eines Kontrollers aus ihren Eingaben ein Geschäftsobjekt (Modell), und übergibt es an eine View, die es als HTML- Dokument rendert. Dieses wird schließlich an den Browser zur Dastellung gesendet:

Controller.Action(e1, ..., en) → Modell → View → Html- Dokument

Die View, welche der Controller auswählt, ist ein Objekt der Klasse System.Web.Mvc.ViewPage:

Der Rendern der View in HTML erfolgt durch eine ViewEngine, in der Regel der Razor- Engine. Die ViewEngine lädt dazu das View- Objekt und eine Html- Vorlage (*cshtml) mit serverseitig ausführbaren Code:
                            +-------------+
ViewPage- Objekt ---------->| ViewEngine  |
                            | (Razor)     |--> HTML- Dokument
Html-Template (*.cshtml) -->|             |   
                            +-------------+                   
Die Html- Vorlagen sind Ordner Views für jeden Controller in einem Unterverzueichnis abgelegt:

Datenaustausch zwischen Controller und View

Primär ist für den DAtenaustausch zwischen Controller und View ist die Übergabe des Modells. In der Eigenschaft ViewPage.Model stellt der Controller der View das Modell bereit. In der View kann auf dieses über @Model zugegriffen werden.

Alternativ kann der Controller auch Daten über die ViewPage- Eigenschaften ViewPage.ViewData und ViewPage.ViewBag an die View übergeben. Wann dies sinnvoll ist, wird hier beschrieben.

Globalisierung und Lokalisierung