According to the docs, starting with .NET 6, the templates use top level statements. They say you should create a .NET 5 project and then manually change it to .NET 6 as a workaround if you don't want to use top level statements.
References:
The C# templates for .NET 6 use top level statements.
Tutorial: Explore ideas using top-level statements to build code as you learn
While a .NET 6 console app template generates the new style of top-level statements programs, using .NET 5 doesn't. By creating a .NET 5 project, you'll receive the old program style. Then, you can edit the project file to target .NET 6 but retain the old program style for the Program.cs file.
This is feature starting with c# 9.0. There is no misconfiguration in your project.
Use:
dotnet new webapi --use-program-main -o <project>
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.