Вернуть измененную viewModel для просмотра

Я хочу сделать что-то вроде этого:

[HttpPost]
public ActionResult Index(Foo foo)
{
    foo.Name = "modified";

    return View(foo);
}

но когда мое представление отображается, оно всегда имеет старые значения! Как я могу изменить и вернуть? Должен ли я очищать ModelState каждый раз?

Мой взгляд:

@model MvcApplication1.Models.Foo


@using (Html.BeginForm())
{
    @Html.TextBoxFor(m => m.Name)
    @Html.TextBoxFor(m => m.Description)

    <input type="submit" value="Send" />
}
 Shyju06 июн. 2012 г., 21:17
это должно работать нормально.
 MuriloKunze06 июн. 2012 г., 21:33
Ну, я создал новые проекты MVC 3 и MVC 4, и это не работает :(
 Blast_dan06 июн. 2012 г., 21:32
что-то еще происходит тогда. это должно работать нормально.
 MuriloKunze06 июн. 2012 г., 21:20
@Shyju Это работает только для меня, если я использую «ModelState.Clear ();» перед установкой измененных свойств.

Ответы на вопрос(1)

Решение Вопроса

Я думаю, что это может быть ожидаемым поведением, потому что "нормальный" Сценарий, в котором вы отправляете ту же модель в представление, - это когда в модели есть ошибки.

Увидеть:http://blogs.msdn.com/b/simonince/archive/2010/05/05/asp-net-mvc-s-html-helpers-render-the-wrong-value.aspx

Ваш ответ на вопрос