URL-адрес из имени метода действия или MethodInfo или чего-либо, или список маршрутов действия - PullRequest
0 голосов
/ 19 сентября 2010

Я пытаюсь задокументировать все действия в своем веб-приложении, и я хочу предоставить пример URL-адреса для действия.

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

Я думаю, мне, возможно, придется написать собственный атрибут для каждого действия, чтобы указать фиктивные значения, которые будут использоваться для действий с параметрами.

1 Ответ

1 голос
/ 19 сентября 2010

Вы можете легко получить все действия, используя отражение:

var actions = 
    from controller in Assembly.GetExecutingAssembly().GetTypes()
    where typeof(Controller).IsAssignableFrom(controller)
    from action in controller.GetMethods()
    where typeof(ActionResult).IsAssignableFrom(action.ReturnType)
    select new { Controller = controller, Action = action };

Адаптируйте для включения интересующих вас сборок.

...