RouteUrl
генерирует URL на основе имени маршрута. Если у вас есть несколько маршрутов с одинаковыми параметрами, метод Action
может выбрать неправильный - он работает в соответствии с порядком определений маршрутов. Это может иметь место, когда ваши маршруты имеют необязательные параметры.
Если вы хотите убедиться, что будет использоваться определенный URL-адрес маршрута, вам нужно позвонить RouteUrl
, передавая это имя маршрута. Имена маршрутов уникальны и четко идентифицируют маршрут.
Еще одно отличие состоит в том, что Action
является специфичным для MVC (он использует имена контроллеров и действий), тогда как RouteUrl
является общим и может использоваться без MVC (вы можете иметь маршрутизацию в WebForms).