zurück zum Artikel

Neu in .NET 7.0 [14]: Stilauswahl für neue WebAPI-Projekte

Dr. Holger Schwichtenberg

(Bild: Shutterstock)

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.

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.

Der Dotnet-Doktor – Holger Schwichtenberg

Dr. Holger Schwichtenberg ist technischer Leiter des Expertennetzwerks www.IT-Visions.de, das mit 53 renommierten Experten zahlreiche mittlere und große Unternehmen durch Beratungen und Schulungen sowie bei der Softwareentwicklung unterstützt. Durch seine Auftritte auf zahlreichen nationalen und internationalen Fachkonferenzen sowie mehr als 90 Fachbücher und mehr als 1500 Fachartikel gehört Holger Schwichtenberg zu den bekanntesten Experten für .NET und Webtechniken in Deutschland.

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

Der neue Standard für WebAPI-Projekte ist wieder der alte Stil (Abb. 1).

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.

in Visual Studio muss man für die Minimal-APIs das Häkchen bei "Use Controllers" entfernen (Abb. 2).

Abbildung 3 zeigt zwei WebAPI-Projekte:

Minimal-API im Vergleich zum Controller-Stil – jeweils mit class Program und Main (Abb. 3)

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:

Minimal-API im Vergleich zum Controller-Stil – jeweils mit Top-Level-Statements (Abb. 4)

(rme [1])


URL dieses Artikels:
https://www.heise.de/-8987887

Links in diesem Artikel:
[1] mailto:rme@ix.de