Я хотел бы получить идентификатор пользователя из действия Get?
Вы не можете получить его из действия GET, потому что вы сейчас выполняете действие POST.Поэтому вам нужно будет опубликовать этот параметр, если вы хотите иметь возможность его получить.
Так, например, если мы предположим, что ваше действие GET предоставило представление, содержащее <form>
, которое будет использоваться для POST, вы могли бывключите идентификатор в качестве скрытого поля внутри этой формы.Таким образом, когда форма отправлена, она будет отправлена на второе действие:
@using (Html.BeginForm())
{
@Html.Hidden("id", Request["id"])
... some other input fields
<button type="submit">OK</button>
}
Также в вашем действии POST вместо некоторых ручных преобразований типов просто используйте связыватель модели по умолчанию, чтобы сделать это за вас.Определите модель представления:
public class MyViewModel
{
public int Id { get; set; }
... some other properties
}
и затем сделайте, чтобы ваше действие POST приняло эту модель представления в качестве аргумента действия:
[HttpPost]
public ActionResult Address(MyViewModel model)
{
int id = model.Id;
// Some code ...
return View();
}