Kurs:Razor Views: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
// via Wikitext Extension for VSCode |
// via Wikitext Extension for VSCode |
||
Zeile 38: | Zeile 38: | ||
=== 5. Teilansichten (Partials) einbinden === | === 5. Teilansichten (Partials) einbinden === | ||
* Einbinden einer Partial View: | |||
```csharp | |||
@Html.Partial("PartialViewName") | |||
@await Html.PartialAsync("PartialViewName") | |||
@await Html.RenderPartialAsync("PartialViewName") | |||
``` | |||
* Mit Model: | |||
```csharp | |||
@Html.Partial("PartialViewName", model) | |||
``` | |||
=== 6. Layouts verwenden === | |||
* Layout festlegen: | |||
```csharp | |||
@{ | |||
Layout = "_Layout"; | |||
} | |||
``` | |||
* Bereich für Content: | |||
```csharp | |||
@RenderBody() | |||
``` | |||
* Sektionen: | |||
```csharp | |||
@RenderSection("SectionName", required: false) | |||
``` | |||
=== 7. ViewData, ViewBag und TempData === | |||
* ViewData: | |||
```csharp | |||
ViewData["Key"] = "Wert"; | |||
@ViewData["Key"] | |||
``` | |||
* ViewBag: | |||
```csharp | |||
ViewBag.Key = "Wert"; | |||
@ViewBag.Key | |||
``` | |||
* TempData: | |||
```csharp | |||
TempData["Key"] = "Wert"; | |||
@TempData["Key"] | |||
``` | |||
=== 8. Kommentare === | |||
* Razor-Kommentar: | |||
```csharp | |||
@* Dies ist ein Razor-Kommentar *@ | |||
``` | |||
* HTML-Kommentar: | |||
```html | |||
<!-- Dies ist ein HTML-Kommentar --> | |||
``` | |||
=== 9. Weitere Razor-Befehle === | |||
* Abschnitt deklarieren: | |||
```csharp | |||
@section Scripts { | |||
<script src="..."></script> | |||
} | |||
``` | |||
* HTML-Helfer: | |||
```csharp | |||
@Html.ActionLink("Linktext", "Action", "Controller") | |||
@Html.TextBoxFor(model => model.Name) | |||
@Html.DisplayFor(model => model.Name) | |||
@Html.EditorFor(model => model.Name) | |||
``` | |||
* Raw HTML ausgeben: | |||
```csharp | |||
@Html.Raw("<b>Fett</b>") | |||
``` |
Version vom 21. Juni 2025, 02:18 Uhr
Razor Views erstellen – Spickzettel
1. Neue Razor View anlegen
- Im Views-Ordner des Controllers eine neue Datei mit der Endung
.cshtml
erstellen. - Beispiel:
Views/Home/Index.cshtml
2. Razor Syntax Grundlagen
- C#-Code einbinden:
@{ /* C#-Code */ }
- Variable ausgeben:
@variableName
- HTML und C# mischen:
```html
@Model.Title
```
3. Model an eine View übergeben
- Im Controller:
```csharp return View(myModel); ```
- In der View:
```csharp @model Namespace.ModelType ```
4. Schleifen und Bedingungen
- Schleife:
```csharp @foreach(var item in Model.Items) {
} ```
- Bedingung:
```csharp @if(Model.IsActive) { Aktiv } ```
5. Teilansichten (Partials) einbinden
- Einbinden einer Partial View:
```csharp @Html.Partial("PartialViewName") @await Html.PartialAsync("PartialViewName") @await Html.RenderPartialAsync("PartialViewName") ```
- Mit Model:
```csharp @Html.Partial("PartialViewName", model) ```
6. Layouts verwenden
- Layout festlegen:
```csharp @{ Layout = "_Layout"; } ```
- Bereich für Content:
```csharp @RenderBody() ```
- Sektionen:
```csharp @RenderSection("SectionName", required: false) ```
7. ViewData, ViewBag und TempData
- ViewData:
```csharp ViewData["Key"] = "Wert"; @ViewData["Key"] ```
- ViewBag:
```csharp ViewBag.Key = "Wert"; @ViewBag.Key ```
- TempData:
```csharp TempData["Key"] = "Wert"; @TempData["Key"] ```
8. Kommentare
- Razor-Kommentar:
```csharp @* Dies ist ein Razor-Kommentar *@ ```
- HTML-Kommentar:
```html ```
9. Weitere Razor-Befehle
- Abschnitt deklarieren:
```csharp @section Scripts { <script src="..."></script> } ```
- HTML-Helfer:
```csharp @Html.ActionLink("Linktext", "Action", "Controller") @Html.TextBoxFor(model => model.Name) @Html.DisplayFor(model => model.Name) @Html.EditorFor(model => model.Name) ```
- Raw HTML ausgeben:
```csharp @Html.Raw("Fett") ```