На самом деле выходные данные двух методов одинаковы, но генерируются несколько разными способами:
Html.ActionLink()
позволяет легко создавать ActionLinks и дает вам базовый контроль над тем, что отображается. Если у вас не слишком много маршрутов или вам не нужно предоставлять слишком много или слишком конкретную информацию, это отлично подойдет.
Метод Html.RouteLink()
принимает несколько иные аргументы и, таким образом, дает вам немного более подробный контроль над тем, как обрабатываются вещи. Я склонен использовать этот метод, когда мой сценарий немного сложнее или когда у меня есть более подробная структура маршрута.
Одним из примеров является недавний проект, где у меня (для гибкости) было несколько разных маршрутов, которые были все довольно простыми, чем один сложный, который позволял бы получать много информации. Таким образом, я получил четыре или пять маршрутов для одного и того же контроллера, и все с заданным действием по умолчанию. Я в основном использовал версию RouteLink
, потому что когда я указывал имя маршрута, параметры по умолчанию вводились автоматически.
Используйте их по своему усмотрению, и они имеют смысл для вашего проекта. В действительности ни у одного из них нет никаких плюсов / минусов (это не соответствует другим ...).