我以前也遇到过这个问题,这让我很恼火,但我一生都无法记住问题所在。
我有一个控制器...
public ActionResult SubmitApplication(ApplicationModel model)
{
return View("Index", model);
}
和视图
@model ApplicationModel
@using (Html.BeginRouteForm(null, null, FormMethod.Post, new { action = "/apply/SubmitApplication" }))
@Html.TextBoxFor(model => model.Email)
<input type="submit" text="submit"/>
}
我在操作方法上打断,输入的电子邮件正在传递给操作方法没有问题。但是.....无论发生什么,控制器都会在某些时候清除电子邮件,当它传递到页面时,我最终会得到一个空的邮箱。但我想保留它,这样用户就不必再次输入所有信息。我在这里想念什么?
谢谢
编辑:
对不起,我有一个错误的水印工具掩盖了响应,但是仍然有一个奇怪的问题......当我这样做时......
[HttpPost]
public ActionResult Apply(ApplicationModel model)
{
return View("Index",new ApplicationModel(){FullName = "newValue"});
}
我仍然没有获得页面上的“newValue”,而是获得了原始发布的价值。有人可以解释一下吗?是跟模型状态有关吗?