Вы в основном правы, маршрутизация конечных точек существенно изменила способ работы маршрутизации. Раньше промежуточное ПО не знало, какое действие в MVC будет обрабатывать запрос, потому что лог выбора действия c вызывался изнутри MvcMiddleware
. Теперь с маршрутизацией конечных точек промежуточное ПО, размещенное после app.UseRouting();
и перед app.UseEndpoints();
, может знать, какова конечная конечная точка. Это также устранило необходимость дублировать такие вещи, как политики CORS.
Сопоставление MVC маршрутов выполняется с помощью MapControllerRoute()
, как вы это сделали. Маршруты атрибутов, определенные, например, с помощью [HttpGet]
, отображаются также при вызове MapControllerRoute
. Если ваше приложение использует только маршруты атрибутов, вы можете полностью опустить аргументы для MapControllerRoute
.