Инструмент для перечисления маршрутов MVC - Visual Studio Express

Я учу .NET MVC и приложение, которое я создаю, стало скорее спагетти-подобным. В моем коде у меня много действий в разных контроллерах, которые, естественно, производят различные виды и частичные просмотры. Хуже того, у меня есть команды @Html.Action, которые добавляют еще один путаница. Некоторые из них остаются в стороне от действия по умолчанию для лесов.

Есть ли какой-либо инструмент, который создает список всех возможных маршрутов на моем сайте и представления, которые они возвращают?

Я также хотел бы найти все неиспользованные представления и действия без просмотров и вообще реорганизовать все правильно. Что-то вроде этого (просьба не комментировать этот конкретный пример):

Route               Views returned
------------------------------------------
/User/Edit          /User/Edit.cshtml
/Admin/User/Edit    /User/Edit.cshtml
...

Есть ли такая вещь? Это можно сделать с помощью шаблона .tt?

Или, может быть, весь мой подход неправильный..!

Ответ 1

Они могут помочь вам на вашем пути:

Я не тестировал визуализатор Mvc Route, но похоже, что он мог делать то, что вы просите.

Edit:

Возможно, это работает лучше для вас. Он не покажет вам возвращенные представления, хотя, по крайней мере, отобразит все контроллеры и действия:

  • Добавьте MvcCodeRouting пакет nuget в ваш проект.
  • Перейдите к способу регистрации маршрутов.
  • После routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); добавьте следующие строки кода:

    routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
    
    // If you don't have "HomeController", choose another controller you have.
    // MvcCodeRouting will look for all controllers in the same namespace and sub-namespaces as the one specified here.
    routes.MapCodeRoutes(typeof(HomeController), new CodeRoutingSettings
    {
        UseImplicitIdToken = true
    });
    
    // Other, existing, routes here...
    
  • Создайте и запустите приложение.

  • Перейдите к http://yoururl.com/routes.axd, чтобы просмотреть все созданные маршруты, они будут содержать все действия.
  • Если вы установили Route Debugger, вы можете увидеть их там, чтобы:

    Route Debugger screenshot