【发布时间】:2013-06-22 00:27:15
【问题描述】:
我有以下简单(出于问题的目的)控制器/动作:
public ActionResult Edit(int id)
{
User user = repository.GetUser(id);
return View(user);
}
[HttpPost]
public ActionResult Edit(User user)
{
user.Name = user.Name.ToUpper();
return View(user);
}
在 VS 中使用常规步骤将视图生成为 Edit for User
我面临的问题是在名称文本框中输入的任何内容都将显示给用户,但没有大写。我已经检查并执行了 POST 的编辑操作,并且 user.Name 值变为大写,但 .TextBoxFor 仍在使用用户输入的小写值。
我还检查过,如果我在 POST 之后打印(不使用任何 Html Helper)Model.Name 的值,它将为大写,因为我希望 Html.TextBoxFor 能够正常运行。
这是 MVC 的错误吗?
有没有办法按照我想要的方式进行这项工作,这意味着动作/控制器是难题中的一部分,用于决定视图的数据值,而不是使用请求对象中的数据值并忽略视图控制器可能做了哪些更改?
提前致谢
【问题讨论】: