Сопоставление имени параметра запроса с параметром действия с другим именем - PullRequest
0 голосов
/ 23 мая 2019

У меня есть метод действия:

public ActionResult GetBook(int id){
...
}

Этот запрос не будет принят из-за неправильного имени параметра:

/controllerName/GetBook?bookId=3

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

Я хочу, чтобы параметр запроса был связан с именами "id" и "bookId".
Другими словами, этот запрос передается:

/controllerName/GetBook?bookId=3

так же, как

/controllerName/GetBook?Id=3

1 Ответ

1 голос
/ 24 мая 2019

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

Зарегистрировать маршрут вваш RouteConfig.cs следующим образом

routes.MapRoute(
 "GetBook",
 "ControllerName/GetBook/{id}/{bookId}",
 new { controller = "ControllerName", action = "GetBook", id = UrlParameter.Optional, bookId = UrlParameter.Optional }
);

Затем в вашем контроллере создайте метод действия следующим образом

public ActionResult GetBook(int id = 0, int bookId = 0) {
    ...
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...