У меня есть model
название с атрибутом PostID
и еще model
, называемое столбом. В списке view
, когда пользователь нажимает на пост, чтобы добавить изображения к нему, он передает PostID
через HtmlActionLink
как передать идентификатор контроллеру в mvc
@Html.ActionLink("Add Images", "AddImages", new { id = item.PostID })
Он отлично работает, но мне нужно сохранить, что PostId
в образе Model
как Что ж.
public ActionResult AddImages(int id)
{
ImageViewModel images = new ImageViewModel();
images.PostID = id;
return View(images);
}
[HttpPost]
public ActionResult AddImages(ImageViewModel image, HttpPostedFileBase images)
{
Image newImage = new Image();
newImage.PostID = image.PostID;
return View("Index");
}
Таким образом, он не будет работать, если она сохраняет значение PostID
0. Я также попытался с помощью ViewBag
, но не везло до сих пор. В AddImages View
нет TextBoxFor
или что-либо для атрибута PostID
, так как он не должен быть установлен или замечен пользователями.
Создайте вход для представления идентификатора модели. Обычно скрытый ввод. – Nkosi
Если вы переименуете свое свойство модели просмотра в 'ID' вместо' PostID', то вам не нужно ничего делать - он будет добавлен как значение маршрута в атрибуте 'action' форм (без' HiddenFor() 'is требуется в представлении) –