Neu in .NET 7.0 [14]: Stilauswahl fĂĽr neue WebAPI-Projekte
Wer WebAPI-Projekte mit ASP.NET Core erstellt, hat die Wahl zwischen dem in .NET 6.0 eingefĂĽhrten Minimal-API-Stil und dem ursprĂĽnglichen API-Stil.
(Bild: Shutterstock)
- Dr. Holger Schwichtenberg
Neben der im vorherigen Teil der Serie erwähnten Bevormundung der Entwickler und Entwicklerinnen hinsichtlich des Startcodes machte .NET 6.0 eine weitere Vorgabe, die nicht allen gefiel: Alle neuen WebAPI-Projekte mit ASP.NET Core verwendeten den in .NET 6.0 neuen API-Stil "Minimal APIs" ohne Controller-Klassen.
Videos by heise
In .NET 7.0 lässt Microsoft jetzt wieder die Wahl. An der Kommandozeile entsteht bei
dotnet new webapi
standardmäßig im neuen Projekt wieder ein Dateisystemordner /Controllers mit einer Controller-Klasse
Die Minimal-APIs gibt es nur noch, wenn man explizit den Parameter --use-minimal-apis hinzugibt:
dotnet new webapi --use-minimal-apis
In Visual Studio heißt die Option andersherum: "Use Controllers". Sie ist standardmäßig aber aktiv.
Abbildung 3 zeigt zwei WebAPI-Projekte:
- Links ist eine Minimal-API, aber mit Startklasse statt Top-Level-Statements zu sehen. Ein Verzicht auf
class ProgramundMain()wäre möglich, indem man "Do not use top-level statements" deaktiviert. - Rechts findet sich der klassische Controller-Stil mit Trennung zwischen Startklasse und Controller-Klasse.
Nun sind beide Stile noch mit der Option "Do not use top-level statements" kombinierbar. Wenn man "Do not use top-level statements" ausschaltet, erhält man keine Startklasse Program und keine Statische Main()-Methode mehr (siehe Abbildung 4). Insgesamt gibt es also nun vier Vorlagen für ASP.NET Core-basierte WebAPIs:
- Controller-Stil mit Startklasse,
- Controller-Stil mit Top-Level-Statements,
- Minimal-API mit Startklasse
- Minimal-API mit Top-Level-Statements.
(rme)