Entwerfen moderner Webanwendungen mit ASP.NET Core und Azure
Wir empfehlen, vor diesen Artikel zuerst Modernes Web-App-Muster für .NET zu lesen. Der Artikel Modernes Web-App-Muster für .NET:
- Ist Microsofts empfohlene Anleitung zu modernen Web-App-Mustern. Es bietet eine präskriptive Architektur, Code und Konfigurationsanleitung zum Modernisieren von Web-Apps in der Cloud.
- Stellt eine GitHub-Referenzimplementierung bereit: Eine Web-App auf Produktionsniveau, die Best Practices nutzt. Enthält konkrete Beispiele zum Erstellen moderner Web Apps in Azure.
- Ist aktueller als dieser Artikel und wird aktiv aktualisiert.
EDITION v8.0 – Aktualisiert auf ASP.NET Core 8.0
Informationen zu den Buchaktualisierungen und Communitybeiträgen finden Sie im Änderungsprotokoll.
VERÖFFENTLICHT VON
Microsoft Developer Division, .NET- und Visual Studio-Produktteams
Eine Division der Microsoft Corporation
One Microsoft Way
Redmond, Washington 98052-6399
Copyright © 2023 von Microsoft Corporation
Alle Rechte vorbehalten. Ohne schriftliche Erlaubnis des Herausgebers darf kein Teil des Inhalts dieses Buchs in irgendeiner Form oder auf irgendeine Weise vervielfältigt oder übertragen werden.
Dieses Buch wird unverändert bereitgestellt und drückt die Ansichten und Meinungen des Autors aus. Die Ansichten, Meinungen und Informationen, die in diesem Buch ausgedrückt werden, einschließlich URL und anderer Verweise auf Websites, können sich ohne vorherige Ankündigung ändern.
Einige hier dargestellte Beispiele dienen nur zur Veranschaulichung und sind fiktitös. Jegliche Ähnlichkeit oder Verbindung ist rein zufällig.
Microsoft und die Marken, die auf der Webseite "Marken" unter https://www.microsoft.com aufgeführt sind, sind Marken der Microsoft-Unternehmensgruppe.
Mac und macOS sind Marken von Apple Inc.
Das Docker-Wallogo ist eine eingetragene Marke von Docker, Inc. Verwenden mit Genehmigung.
Alle anderen Marken und Logos sind Eigentum ihrer jeweiligen Eigentümer.
Verfasser:
Steve „ardalis“ Smith – Softwarearchitekt und Trainer – Ardalis.com
Editoren:
Maira Wenzel
Aktionslinks
Dieses E-Book ist auch im PDF-Format (nur englische Version) verfügbar Download
Klonen oder forken Sie die Referenzanwendung eShopOnWeb auf GitHub.
Einleitung
.NET 8 und ASP.NET Core bieten gegenüber der herkömmlichen .NET-Entwicklung mehrere Vorteile. Sie sollten .NET 8 für Ihre Serveranwendungen verwenden, wenn einige oder alle der folgenden Punkte für den Erfolg Ihrer Anwendung wichtig sind:
Plattformübergreifender Support.
Verwendung von Microservices.
Verwendung von Docker-Containern.
Hohe Leistungs- und Skalierbarkeitsanforderungen.
Parallele Versionsverwaltung von .NET-Versionen durch Anwendung auf demselben Server
Herkömmliche .NET 4.x-Apps können und unterstützen viele dieser Anforderungen, aber ASP.NET Core und .NET 8 wurden optimiert, um verbesserte Unterstützung für die oben genannten Szenarien zu bieten.
Immer mehr Organisationen entscheiden sich dafür, ihre Webanwendungen in der Cloud mit Diensten wie Microsoft Azure zu hosten. Sie sollten in Erwägung ziehen, Ihre Anwendung in der Cloud zu hosten, wenn Folgendes für Ihre Anwendung oder Organisation wichtig ist:
Geringere Investitionen in Rechenzentrumskosten (Hardware, Software, Raum, Versorgungsunternehmen, Serververwaltung usw.)
Flexible Preisgestaltung (Bezahlung basierend auf Nutzung, nicht für ungenutzte Kapazität).
Extreme Zuverlässigkeit.
Verbesserte App-Mobilität; Ändern Sie ganz einfach, wo und wie Ihre App bereitgestellt wird.
Flexible Kapazität, Hoch- oder Herunterskalierung basieren auf dem tatsächlichen Bedarf
Das Erstellen von Webanwendungen mit ASP.NET Core, gehostet in Azure, bietet gegenüber herkömmlichen Alternativen viele Wettbewerbsvorteile. ASP.NET Core ist für moderne Webanwendungsentwicklungspraktiken und Cloudhostingszenarien optimiert. In diesem Leitfaden erfahren Sie, wie Sie Ihre ASP.NET Core-Anwendungen entwerfen, um diese Funktionen optimal nutzen zu können.
Version
Dieses Handbuch wurde überarbeitet und deckt die .NET 8.0-Version sowie viele zusätzliche Updates ab, die mit der gleichen "Welle" von Technologien (d. h. Azure und zusätzlichen Technologien von Drittanbietern) zeitgleich mit der Veröffentlichung von .NET 8.0 einhergehen. Deshalb wurde die Buchversion auch auf Version 8.0aktualisiert.
Zweck
Dieser Leitfaden bietet eine umfassende Anleitung zum Erstellen von -monolithischen-Webanwendungen mit ASP.NET Core und Azure. In diesem Zusammenhang bezieht sich "monolithisch" auf die Tatsache, dass diese Anwendungen als einzelne Einheit bereitgestellt werden, nicht als Sammlung von interagierenden Diensten und Anwendungen. In einigen Kontexten kann der Begriff Monolith abwertend verwendet werden, aber in den meisten Fällen ist eine einzelne Anwendung viel einfacher zu erstellen, bereitzustellen und zu debuggen als eine Anwendung, die aus vielen verschiedenen Diensten besteht, während die geschäftlichen Anforderungen erfüllt werden.
Dieser Leitfaden ergänzt ".NET Microservices. Architektur für containerisierte .NET-Anwendungen", die sich mehr auf Docker, Microservices und die Bereitstellung von Containern zum Hosten von Unternehmensanwendungen konzentriert.
.NET Microservices. Architektur für containerisierte .NET-Anwendungen
- E-Book
https://aka.ms/MicroservicesEbook - Beispielanwendung
https://aka.ms/microservicesarchitecture
Wer sollte diesen Leitfaden verwenden?
Das Publikum für diesen Leitfaden ist hauptsächlich Entwickler, Entwicklungsleiter und Architekten, die daran interessiert sind, moderne Webanwendungen mit Microsoft-Technologien und -Diensten in der Cloud zu erstellen.
Eine sekundäre Zielgruppe sind technische Entscheidungsträger, die mit ASP.NET oder Azure bereits vertraut sind und nach Informationen suchen, ob es sinnvoll wäre, auf ASP.NET Core für neue oder vorhandene Projekte umzustellen.
So können Sie dieses Handbuch verwenden
Dieser Leitfaden wurde in ein relativ kleines Dokument zusammengefasst, das sich auf das Erstellen von Webanwendungen mit modernen .NET-Technologien und Azure konzentriert. Daher kann es in seiner Gesamtheit gelesen werden, um eine Grundlage für das Verständnis solcher Anwendungen und deren technische Überlegungen zu bieten. Der Leitfaden kann zusammen mit seiner Beispielanwendung auch als Ausgangspunkt oder Referenz dienen. Verwenden Sie die zugeordnete Beispielanwendung als Vorlage für Ihre eigenen Anwendungen, oder um zu sehen, wie Sie die Komponententeile Ihrer Anwendung organisieren können. Erinnern Sie sich an die Grundsätze des Leitfadens und die Beschreibung von Architektur- und Technologieoptionen und Entscheidungsüberlegungen, wenn Sie diese Entscheidungen für Ihre eigene Anwendung abwägen.
Sie können diesen Leitfaden an Ihr Team weiterleiten, um ein gemeinsames Verständnis dieser Überlegungen und Möglichkeiten zu gewährleisten. Wenn alle mit einem gemeinsamen Satz von Terminologie und zugrunde liegenden Prinzipien arbeiten, trägt das dazu bei, die konsistente Anwendung von Architekturmustern und -praktiken sicherzustellen.
Feedback senden
Dieses Buch und verwandte Beispiele entwickeln sich ständig weiter, so dass Ihr Feedback willkommen ist. Wenn Sie Kommentare dazu haben, wie dieses Buch verbessert werden kann und Sie dieses Buch auf <learn.microsoft.com>lesen, verwenden Sie den Abschnitt Feedback unten auf der Seite:
Wie in der vorherigen Bildschirmaufnahme hervorgehoben, können Sie im Feedbackabschnitt Feedback senden für:
- Dieses Produkt: Verwenden Sie das Feedbackformular zum .NET-Produkt.
- Diese Seite: Verwenden Sie eine GitHub-Issue-Vorlage mit den Seitendetails.
Wenn Sie dieses Buch im PDF-Format lesen, können Sie uns Feedback durch Erstellen eines neuen .NET Docs: GitHub-Issues oder mithilfe von .NET Architecture eBooks: Vorlage für GitHub-Issue übermitteln.
Referenzen
- Auswahl zwischen .NET und .NET Framework für Server-Apps
https://learn.microsoft.com/dotnet/standard/choosing-core-framework-server