Was ist neu in ASP.Net 5 :: Funktionen erklärt

Veröffentlicht: 2014-11-27

ASP.Net 5.0

Einführung von ASP.NET 5.0

ASP.NET 5 wurde von Grund auf neu entwickelt und lehnt sich an das Erbe der .NET-Familie an, um moderne Webanwendungen zu erstellen. Neu hinzugefügte Funktionen in ASP.Net 5.0 werden basierend auf den Kundenanforderungen und dem Feedback erstellt, um ein optimiertes Entwicklungsframework für Anwendungen zu erreichen, die bereitgestellt oder in lokalen Räumlichkeiten ausgeführt werden sollen. ASP.Net besteht aus kompakten Komponenten mit vernachlässigbarem Overhead, sodass Entwickler beim Erstellen ihrer Anwendungen Flexibilität spüren können.

Die eingeführten Änderungen in ASP.Net 5.0 zielen genau darauf ab, moderne Webanwendungen zu erstellen. Diese Änderungen werden sicherlich den Entwicklungsprozess, das Webhosting und die Wartung von Anwendungen vereinfachen. Ältere Anwendungen werden ohne Änderungen auf der neuen Version von ASP.NET ausgeführt. Um jedoch die neuen Features in ASP.NET 5 nutzen zu können, müssen Sie Ihren Code auf das neue Framework portieren.

Funktionen von ASP.NET 5

Kombination von MVC, Web-API und Webseiten in einem einzigen Programmiermodell

In ASP.NET 5 sind MVC, Web-API und Webseiten in einem einzigen Framework namens MVC 6 gebündelt. Dieser Ansatz beseitigt Duplikate aus dem Framework und erleichtert Entwicklern das Erstellen von Apps. Daher müssen Sie keinen unterschiedlichen Code schreiben, je nachdem, ob Sie sich in einem MVC-, Web-API- oder Webseitenkontext befinden.

Verwenden Sie verschiedene .NET Frameworks nebeneinander

Wenn Ihre Anwendung von einer bestimmten Version von .NET Framework abhängt, müssen alle Ihre Apps dieselbe Version von .NET ausführen. Falls Sie möchten, dass einige Ihrer Apps die neueste Version von .NET verwenden, sind Sie sich möglicherweise nicht sicher, ob alle Ihre Legacy-Apps mit der neuen Version ordnungsgemäß funktionieren würden.

Um diese Situation zu überwinden, können Sie mit ASP.NET 5 die Abhängigkeiten innerhalb Ihres Bereitstellungspakets definieren, sodass Sie für jede App angeben können, welche Version von .NET verwendet werden soll. Sie können die Vorteile der neuesten .NET-Version für einige Apps genießen, während Sie für andere Apps bei der älteren .NET-Version bleiben. Alle diese verschiedenen Versionen von .NET können problemlos nebeneinander ausgeführt werden.

Möglichkeit zum Selbsthosten oder Hosten auf IIS

ASP.NET 5 bietet die Flexibilität, Ihre Anwendung auf IIS zu hosten oder sie in Ihrem eigenen Prozess selbst zu hosten. Wenn Sie die Anwendung erstellen, die auf die Core CLR abzielt, können Sie sie mit jeder im Bereitstellungspaket gebündelten Abhängigkeit bereitstellen. Daher sind Ihre Anwendung und ihre Abhängigkeiten vollständig eigenständig und unabhängig von der Systeminstallation von .NET. Diese neue Funktion gibt Ihnen die Freiheit, Ihre App auf jeder Art von Gerät oder Hosting-Plattform zu hosten. Sie müssen lediglich Ihr Projekt auf diesem Host bereitstellen.

Überprüfen Sie Änderungen im Browser, ohne das Projekt neu zu erstellen

Visual Studio 2015 bietet eine einfache Entwicklerumgebung für ASP.NET-Anwendungen. Nehmen Sie einfach Änderungen an Ihrem Code vor, speichern Sie sie und aktualisieren Sie den Browser. Sie können Codeänderungen im Webbrowser sehen, ohne das Projekt neu erstellen zu müssen.

Neue flexible und plattformübergreifende Laufzeitumgebung, die mit der Mono-Laufzeitumgebung unter OS X und Linux ausgeführt werden kann

Bisher wurde das .NET Framework als Einzelinstallation ausgeliefert. Mit jeder Version von .NET wurden nach und nach Funktionen hinzugefügt, aber nie entfernt. So wuchs die Größe des Rahmens ständig. Dieser Ansatz stellt sicher, dass ein mit .NET installierter Windows-Computer jede .NET-App unterstützt, aber es ist möglich, dass nicht jede Anwendung alle installierten Funktionen verwendet.

Cross Platform Runtime

ASP.NET 5 gibt Ihnen mehr Flexibilität, indem es Ihnen drei Laufzeiten zur Verfügung stellt:

  • Vollständige .NET-CLR: Die vollständige .NET-CLR ist die Standardlaufzeit für Visual Studio-Projekte. Es ist die beste Option für Abwärtskompatibilität, da es den gesamten API-Satz bereitstellt.
  • Core CLR (Cloud-optimierte Laufzeit): Die Core CLR ist eine rein modulare Laufzeit für ASP.NET 5-Projekte. Es wurde in Komponenten konzipiert, sodass Sie nur die erforderlichen Funktionen in Ihre App aufnehmen müssen. Die Core-CLR beträgt etwa 11 MB statt etwa 200 MB für die vollständige .NET-CLR.
  • Plattformübergreifende CLR: Microsoft wird eine plattformübergreifende Laufzeitumgebung für Linux und Mac OS X veröffentlichen. Damit können Sie .NET-Apps auf Mac- und Linux-Computern entwickeln und ausführen. Bis zu seiner Veröffentlichung können Sie die Mono CLR für die plattformübergreifende Entwicklung verwenden. Standardmäßig verwenden Visual Studio-Projekte die vollständige .NET-CLR. Sie können die Core CLR in den Konfigurationseigenschaften für Ihr Projekt angeben.

Modulare HTTP-Request-Pipeline für höchsten Durchsatz

Mit ASP.NET 5 wird eine neue HTTP-Anforderungspipeline eingeführt, die modular und schnell ist. Mit dieser neuen Pipeline können Sie nur Komponenten hinzufügen, die zum Ausführen Ihrer Anwendung erforderlich sind. Dieser Ansatz reduziert den Overhead in der Pipeline, sodass Sie eine verbesserte Ausgabe Ihrer Anwendung erhalten.

Abhängigkeitsverwaltung über den NuGet-Paketmanager

Mit ASP.NET 5 können Sie Abhängigkeiten in Ihren Projekten so verwalten, dass Sie Ihrem Projekt keine Assemblyverweise hinzufügen müssen. Stattdessen können Sie NuGet-Pakete über den NuGet-Paket-Manager hinzufügen oder die JSON-Datei (project.json) bearbeiten, die die in Ihrem Projekt verwendeten NuGet-Pakete und -Versionen auflistet. Um Abhängigkeiten hinzuzufügen, können Sie einfach den Namen und die Versionsnummer des NuGet-Pakets in Ihre project.json-Datei eingeben.

Dependency Management Through Nuget Package Manager

Die Datei „project.json“ enthält nur NuGet-Pakete, die direkt zu Ihrem Projekt hinzugefügt werden. Wenn Sie ein NuGet-Paket hinzufügen, das von einigen anderen Paketen abhängig ist, werden diese sekundären Abhängigkeiten geladen, aber nicht in der Datei „project.json“ aufgeführt. Dieser Ansatz sorgt dafür, dass die Datei „project.json“ weniger schwerfällig und einfacher zu verwalten ist. Sie können Abhängigkeiten in der Project.json-Datei über einen beliebigen Texteditor hinzufügen.

Cloud-optimierte Umgebungskonfiguration

Projekte, die auf ASP.NET 5 basieren, sind für die Cloudplattform hochgradig optimiert, um eine einfache Bereitstellung zu erreichen. Visual Studio 2015 führt anstelle der Datei „Web.config“ eine neue Umgebungskonfiguration ein. Es kann benannte Werte aus einer Vielzahl von Quellen (z. B. JSON, XML oder Umgebungsvariablen) anfordern. Sie können Werte für jede Umgebung angeben, und nach der Bereitstellung liest Ihre App einfach die richtigen Werte.

Open Source über die .NET Foundation und nimmt Beiträge in GitHub entgegen

Der gesamte ASP.NET 5-Code ist auf GitHub verfügbar. GitHub wird als Repositories für die gesamte Entwicklung verwendet, sodass Sie sehen können, welche Änderungen vorgenommen wurden und wann sie vorgenommen wurden. Sie können den Code herunterladen, Ihre eigenen benutzerdefinierten Implementierungen von ASP.NET-Features erstellen und Änderungen bei GitHub einreichen.

Keine Sorge für Legacy-Anwendungen

Anwendungen, die Sie auf früheren Versionen von ASP.NET erstellt haben, funktionieren weiterhin mit dem neuen .NET Framework. Sie müssen diese Anwendungen nicht aktualisieren oder portieren, wenn Sie die neuen Features in ASP.NET 5 nicht benötigen.

Fazit

Sicherlich hat Microsoft einige revolutionäre Änderungen auf Designebene in ASP.NET 5 vorgenommen, um moderne Web-Apps zu entwickeln. Der attraktivste Teil von ASP.NET 5 ist, dass es vollständig Open Source und auf GitHub verfügbar ist. Microsoft hat ASP.NET 5 auf GitHub entwickelt, damit Entwickler den Code verstehen und zu seinen Verbesserungen beitragen können. Indem Microsoft ASP.Net Open Source macht, hat Microsoft Communitys und Entwickler eingeladen, den Code herunterzuladen und ihre eigenen angepassten Implementierungen von ASP.NET zu erstellen.