Browser Sync: ASP.NET Core automatisch neu laden in Visual Studio Code

Browser Sync: ASP.NET Core automatisch neu laden in Visual Studio Code

Browser Sync ist eine Funktionalität des klassischen Visual Studio: Wird eine Razor-Ansicht verändert und gespeichert, aktualisiert das Tool automatisch euer Browser-Fenster. Das händische Aktualisieren entfällt damit. Leider besitzt der quelloffene Visual Studio Code Editor bislang keine vergleichbare Funktionalität. Glücklicherweise lässt sich ein ähnliches Verhalten mit Browsersync umsetzen. So kommt ihr auch unter Linux in den …

Visual Studio Projekt als lokale NuGet Paketquelle einbinden

Visual Studio Projekt als lokale NuGet Paketquelle einbinden

Visual Studio kann während des Buildvorgangs automatisch ein NuGet-Paket erstellen. Im Ordner bin/Debug entsteht so eine .nupkg Datei, die dem Name der Projektmappe entspricht. Diese lässt sich – sowohl manuell als auch automatisiert – bereitstellen. Wahlweise auf NuGet.org oder einer selbst gehosteten Registry. Hierfür kommt beispielsweise ProGet in Frage. Für die finale Bereitstellung wird man …

ASP.NET Core Razor-Ansichten vorkompilieren verbessert Performance und Fehlearnfälligkeit

ASP.NET Core Razor-Ansichten vorkompilieren verbessert Performance und Fehlearnfälligkeit

Razor-Ansichten wurden in ASP.NET bisher zur Laufzeit geladen. Das vorkompilieren (oft auch aus PreCompilieren bezeichnet) ändert dies: Die .cshtml Dateien werden zu einer DLL kompiliert. Damit lassen sich diese zur Laufzeit nicht mehr verändern. Im Regelfall ist dies zumindest produktiv auch nicht erforderlich. Warum ist PreCompilieren sinnvoll? Dieses Vorgehen hat zwei große Vorteile: Zum einen …

ASP.NET Core Projekt von Version 1.0 auf 1.1 aktualisieren

ASP.NET Core Projekt von Version 1.0 auf 1.1 aktualisieren

Bereits seit Ende 2016 ist .NET Core in Version 1.1 erschienen. Sicherheitstechnisch ist dies wahrlich kein Pflicht-Update – Erhält 1.0 als LTS-Release drei Jahre lang Aktualisierungen. Dennoch lohnt sich ein Blick auf die Neuerungen. Darunter unter anderem View-Kompoenten oder die Möglichkeit, Razor-Views bereits zur Kompilierzeit statt zur Laufzeit vorzukompilieren. Leider ist der Updateprozess noch nicht …

ASP.NET Core: ViewBag-Eigenschaft im Konstruktur eines Controllers setzen

ASP.NET Core: ViewBag-Eigenschaft im Konstruktur eines Controllers setzen

In einer MVC-Anwendung kommt es immer wieder vor, dass man bestimmte Daten im gesamten Controller benötigt. Beispielsweise für eine Info-Box oder Sidebar, die man mittels ViewBag/ViewData unabhängig vom Model der jeweiligen Aktionen übergibt. Als objektorientierter Entwickler kommt man hier schnell auf die Idee, die Daten einfach im Konstruktur zu laden. Jedoch ist es nicht möglich, …

Razor-Ansichten in ASP.NET Core mit dem neuen cache TagHelper zwischenspeichern

Razor-Ansichten in ASP.NET Core mit dem neuen cache TagHelper zwischenspeichern

Razor ist eine einfache, flexible, aber zugleich mächtige Template-Sprache für ASP.NET und ASP.NET Core Webanwendungen. Allerdings werden Razor-Ansichten erst zur Laufzeit in C# Code kompiliert. Dieser wiederum muss bei jeder Anfrage ausgeführt werden. Zwar erledigt ASP.NET Core dies sehr performant. Je nach Anwendung macht es dennoch Sinn, die kompilierten und gerenderten Razor-Ansichten zwischenzuspeichern. Insbesondere Teilansichten, die …

ASP.NET Core: TagHelper statt UrlHelper für sauberen und lesbaren Code

ASP.NET Core: TagHelper statt UrlHelper für sauberen und lesbaren Code

Im alten ASP.NET MVC gab es eine recht umfangreiche Sammlung an UrlHelpern. Sie wurden zur Generierung von Links und Formular-Elementen wie Labeln oder Textboxen in Razor-Ansichten genutzt. Ihr Vorteil bestand darin, dass die entsprechenden HTML-Elemente automatisch auf Basis der genutzten Komponenten (Model, Route usw) generiert wurden. In einem Formular genügte es daher, beispielsweise den Anzeigetext …

Cache busting in ASP.NET Core: Verhindern, dass Browser alte JS/CSS Dateien oder Bilder zwischenspeichern

Cache busting in ASP.NET Core: Verhindern, dass Browser alte JS/CSS Dateien oder Bilder zwischenspeichern

Bereits seit längerem ist es bei vielen Browsern üblich, statische Inhalte wie JavaScript/CSS und Bilder lokal zwischenzuspeichern. In der Regel geschieht dies anhand des Namens: Der Browser lädt beispielsweise die Datei style.css beim ersten Besuch herunter und speichert sie lokal auf dem Computer. Beim nächsten Aufrufen der Seite prüft der Browser zuerst seinen Cache, findet die style.css …

ASP.NET Core: Verschiedene Umgebungen wie Entwicklung/Produktiv nutzen

ASP.NET Core: Verschiedene Umgebungen wie Entwicklung/Produktiv nutzen

Das Verhalten einer Anwendung je nach Umgebung anpassen zu können, kann eine große Hilfe für Entwickler sein: So lassen sich Debug-Informationen wie detaillierte Fehlerseiten während der Entwicklung anzeigen, die auf dem Produktivsystem kein Nutzer sehen wird. Durch das Definieren von Umgebungen die darüber entscheiden wird sichergestellt, dass die manuelle Entfernung solcher Entwicklungstools nicht vergessen wird. …

Einstieg in ASP.NET Core 1.0: Entwicklungsumgebung einrichten und Projekt erstellen

Einstieg in ASP.NET Core 1.0: Entwicklungsumgebung einrichten und Projekt erstellen

Seit dem 27. Juni 2016 ist es soweit: ASP.NET Core ist in der finalen Version 1.0 erschienen. Damit ist das Framework aus dem Beta-Studium heraus, sodass es für ernsthafte Projekte in Betracht gezogen werden kann. Im folgenden Artikel zeigen wir, wie eine Entwicklungsumgebung unter Windows eingerichtet werden kann. Außerdem wird das Beispielprojekt erstellt, welches .NET Entwickler bereits …