это может быть другой метод.В результате я хочу получить все URL-адреса из приложения.
Я планирую авторизацию в своем приложении.И мне нужно, чтобы они (имя области, имя контроллера, имя действия) спросили, когда сделан запрос.Короче, адрес URL.Я пробовал это.
Пример:
- Trial (AreaRegistration)
- Trial1Controller
- Home ActionResult >>> / Trial / Trial1 / Home /
- A ActionResult >>> / Trial / Trial1 / A /
- B ActionResult >>> / Trial / Trial1 / B /
- Trial2Controller
- Examp (AreaRegistration)
- Examp1Controller
- Home ActionResult >>> / Examp / Examp1 / Home /
- A ActionResult; >>> / Examp / Examp1 / A /
- Examp2Controller
- Home ActionResult >>> / Examp / Examp2/ Главная /
var areas = Assembly.GetExecutingAssembly().GetTypes().Where(type => typeof(AreaRegistration).IsAssignableFrom(type)).ToList();
foreach(var area in areas)
{
var controllers = Assembly.GetExecutingAssembly().GetTypes().Where(type => typeof(Controller).IsAssignableFrom(type)).ToList();
foreach (var controller in controllers)
{
var methods = controller.GetMethods(BindingFlags.Public | BindingFlags.Instance);
foreach (var method in methods)
{
if (method.ReturnType == typeof(ActionResult))
{
lstControllerActions.Add(string.Format("Area -> Controller -> Action : {0} -> {1} -> {2}", area.Name, controller.Name, method.Name));
}
}
}
}
lstControllerActions Результат:
- Область -> Контроллер -> Действие: Триал -> Триал1 -> Домой
- Область -> Контроллер -> Действие: Триал -> Триал1 -> A
- Область -> Контроллер -> Действие: Trial -> Trial1 -> B
- Area -> Controller -> Action: Trial -> Examp1 -> Home
- Area -> Controller -> Action: Trial -> Examp1 -> A
- Область -> Контроллер -> Действие: Trial -> Examp2 -> Домой
- Область -> Контроллер -> Действие: Examp-> Trial1 -> Домой
- Область -> Контроллер -> Действие: Trial -> Trial1 -> A
- Область -> Контроллер -> Действие: Trial -> Trial1 -> B
- Область -> Контроллер -> Действие: Trial -> Examp1 -> Home
- Area -> Controller -> Action: Trial -> Examp1 -> A
- Area -> ConТроллер -> Действие: Пробная версия -> Examp2 -> Домой
Все красиво, но, нет контроллера связи между областями.
HELP