I’m a beginner in dotnet technology and I’m following a tutorial but upon using dotnet new webapi -n API it produces the API folder with the properties, obj and bin folder as in the picture below but it doesn’t have Controllers folder like in the tutorial. Can anyone guide me on this ? The project is using .NET 8.0
>Solution :
It seems to be a recent .NET 8 change resulting in the Minimal APIs used by default.
From the docs for dotnet new templates: webapi (with fixed typo – PR @github):
-minimal|--use-minimal-apis
Create a project that uses the ASP.NET Core minimal API. Default is false, but this option is overridden by--controllers. Since the default for--controllersisfalse, enteringdotnet new webapiwithout specifying either option creates a minimal API project.
-controllers,--use-controllers
Whether to use controllers instead of minimal APIs. If both this option and-minimalare specified, this option overrides the value specified by-minimal. Default isfalse. Available since .NET 8 SDK.
So add -controllers/--use-controllers option to the command to get controllers:
dotnet new webapi -n API --use-controllers
Or
dotnet new webapi -n API -controllers