ASP.NET Core ist Bestandteil von .NET 5.

Was ist ASP.NET Core?

ASP.NET Core ist ein Open-Source Web-Framework. Es in vollem Umfang zu beschreiben, wäre nicht mehr „einfach erklärt“. Deshalb beschränke ich mich auf eine nur sehr kurze Erklärung der wichtigsten Aspekte.

ASP.NET Core eine Art Basis-Funktionalität für verschiedene Szenarien bereit. Sämtliche Anwendungen lassen sich in C# programmieren und laufen unter .NET. Seit .NET 5 können ASP.NET Anwendungen unter Windows, Linux oder macOS betrieben werden. Der gesamte Sourcecode ist öffentlich einsehbar und der Entwicklungsprozess kann auf GitHub verfolgt werden.

ASP.NET Core und wurde von Grund auf neu gedacht und entwickelt (Alpha Version erschien 2014). Es unterscheidet sich wesentlich von Vorgänger Versionen. Das neue Framework ist viel schneller und wesentlich attraktiver auch für Umsteiger die nicht aus der Microsoft Welt kommen.

Die wichtigsten Unterschiede zur Vorgängerversion (ASP.NET)

  • Wesentlich schneller
  • Open-Source
  • Plattformunabhängigkeit (Windows, Linux und macOS)
  • Keine Abhängigkeit mehr von Visual Studio
  • Keine Unterstützung von Web Forms (Alternative: Razor Pages)
  • Parallelbetrieb unterschiedlichster Versionen möglich

Unterschiedliche Anwendungsszenarien

Razor Pages

Razor Pages sind der Nachfolger von Web Forms. Lange war die einzige Alternative zu Web Forms der MVC Ansatz. Das Problem ist aber, dass die MVC (Mode-View-Control) nicht so intuitiv zu verstehen ist. Razor Pages basiert technisch auch auf dem MVC Framework. Jedoch wird die Komplexität reduziert auf eine Page und die Logik dahinter.

MVC

ASP.NET Core MVC ist ein Framework zum Erstellen von Webanwendungen und APIs unter Verwendung des Model-View-Controller Patterns.

Blazor

Blazor ist eine Technologie um den C# näher an das Web-UI zu bringen. Es sind zwei Modelle verfügbar. Entweder Blazor wird als Web Assembly betrieben, oder serverseitig.

Web API

Über Web API lassen sich RESTful APIs implementieren. Damit lässt sich also das API für Single Page Applications (SPA) entwickeln.

SingalR

SignalR dient dazu Real-Time-Applikationen zu implementieren. Es bietet eine Abstraktion, um das klassische Modell von Request-Response zu umgehen. Mittels SignalR kann man serverseitig direkt ein Ereignis im Client auslösen. Im Hintergrund arbeitet SingalR mit Websockets, Long Polling oder Server-Sent Events.

gRPC

gRPC ist ein sprachunabhängiges Remote Procedure Call (RPC) Framework. Es eignet sich, um zum Beispiel Mikroservices miteinander kommunizieren zu lassen.

Fazit

ASP.NET Core ist längst erwachsen geworden und sollte auf jeden Fall für neue Projekte in Betracht gezogen werden. Es vereint viele Aspekte, die man von einem modernen Framework erwartet und wird zweifellos auch viele Umsteiger anderer Frameworks begeistern.