Обработка нескольких идентификаторов в маршруте - PullRequest
0 голосов
/ 15 февраля 2019

Насколько я понимаю, обычная маршрутизация в .NET Core MVC - [controller]/[action]/{id?}

Однако у меня есть следующий запрос POST, который я пытаюсь отловить, который выглядит так:

myDomain/MyController/MyAction/userID/anotherID/myInfo

Я пробовал следующее, но, похоже, оно не работает:

public class MyController : Controller
{
    [HTTPPost]
    [Route("MyAction/{userID:minlength(2)}/{anotherID:int}/myInfo")]
    public IActionResult MyAction([FromRoute] string userID, [FromRoute] int anotherID, [FromBody] string stuffIWant)
    {
        return Ok();
    }
}

Очевидно, что я не справляюсь с маршрутизацией правильно, но я не уверен, как бы я это сделалполучите userID и anotherID с этого маршрута.Я опубликовал это действие на своем сайте и попытался создать тестовое сообщение с тем же URL-адресом, но ответа не получил.

1 Ответ

0 голосов
/ 15 февраля 2019

Изменить на:

public class MyController : Controller
{
    [HTTPPost]
    [Route("MyAction/{userID:minlength(2)}/{anotherID:int}/myInfo")]
    public IActionResult MyAction(string userID, int anotherID, [FromBody]  string stuffIWant)
    {
        return Ok();
    }
}
...