POSTing для контроллера, как получить идентификатор из URL - PullRequest
3 голосов
/ 25 ноября 2011

Если я отправлю форму на целевой URL, который содержит идентификатор, например,

/mycontroller/createItemAndAddTo/5

Как мне получить Id (=5) в подпрограмме [HttpPost] ActionResult (которая принимает модель в качестве параметра)

Я хотел бы пропустить Id из данных / формы POST и получить его из URL, поскольку он уже там присутствует

В этом случае Id является внешним ключом, и я обычно включал бы его в качестве скрытого поля, но он кажется ненужным, поскольку он уже включен

1 Ответ

6 голосов
/ 25 ноября 2011

Если у вас есть стандартная настройка маршрута, которая имеет id в качестве последнего токена URL-адреса, тогда связыватель модели по умолчанию автоматически заполнит его значение:

[HttpPost]
public ActionResult Foo(int id)
{
    // id = 5 here
}

или если ваша модель просмотра имеет свойство Id:

[HttpPost]
public ActionResult Foo(MyViewModel model)
{
    // model.Id = 5 here
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...