Передайте простую ViewModel из View в контроллер через скрытое поле - PullRequest
0 голосов
/ 14 сентября 2018

Я пытаюсь передать простой объект, содержащий только одно поле (DateTime) из моего представления обратно в мой контроллер.

У меня есть ViewModel, которая выглядит так:

public class TheViewModel
{
    public DateTime StartTime { get; set; }
}

У меня есть метод поста контроллера, который выглядит так

[HttpPost]
public async Task<ActionResult> StartNew(TheViewModel viewModel)
{
    ....
}

На мой взгляд, моя модель установлена ​​в TheViewModel, и я пытаюсь просто отправить то же значение для поля StartTime ViewModel обратно в контроллер:

@using (Html.BeginForm())
{
    @Html.HiddenFor(m => m.StartTime, new { id = "StartTimeField" })
    <input type="submit" value="Start" />
}

Однако значение поля StartTime всегда является временем даты по умолчанию. Я убедился, что это не значение времени, отправляемого представлению (просмотрев источник страницы)

Что я обманываю?

1 Ответ

0 голосов
/ 15 сентября 2018

Почему вы создаете новый объект внутри HtmlFor? Почему не просто @Html.HiddenFor(m=>m.StartTime)?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...