Инструмент для перечисления маршрутов 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]()
Ответ 2
Да, вы можете использовать Asp.Net MVC MiniProfiler.
Вот несколько отличных ссылок для этого
Домашняя страница Miniprofiler
Блог Scott Hanselman
Блог Sam Saffron
Вот скриншот MiniProfiler:
Надеюсь, это поможет вам.
Ответ 3
Отладка маршрута от Phil Haack может помочь вам
Отладчик маршрутизации ASP.NET
RouteDebugger 2.0