ASP. Net Маршрутизация веб-API для нескольких методов GET - PullRequest
0 голосов
/ 12 февраля 2020

У меня есть существующий ASP. Net Web API с маршрутизацией по умолчанию:

config.Routes.MapHttpRoute(
    name: "DefaultApi",
    routeTemplate: "api/{controller}/{id}",
    defaults: new { id = RouteParameter.Optional });

У меня есть контроллер - TestController, и я хочу иметь несколько методов GET в этом контроллере, например:

public IHttpActionResult MethodA() -> http://....../api/Test/MethodA
public IHttpActionResult MethodB() -> http://....../api/Test/MethodB

Можно ли как-то так поступить, не изменяя существующую маршрутизацию и не нарушая текущие контроллеры / маршрутизацию?

Ответы [ 2 ]

1 голос
/ 12 февраля 2020

Добавьте атрибут Route к вашим методам, например

[Route("MethodA")]
[Route("MethodB")]
0 голосов
/ 12 февраля 2020

Можете ли вы изменить

routeTemplate: "api/{controller}/{id}",

на

   routeTemplate: "api/{controller}/{action}/{id}",
...