更新:Jacco 的建议(如下)为我解决了这个问题。即, ModelState.Clear() 是你的朋友。
我有一个名为 ScheduleController 的控制器,其 ActionResult 如下所示:
[HttpPost]
public ActionResult Create(ScheduledCall scheduledcall)
scheduleCall 模型对象有一个名为 content 的属性。我有一个条件,我想更改 content 属性的值并将模型返回到视图以供用户在浏览器中阅读。我发现虽然更改属性的值很容易,但视图不会将新值呈现给 HTML 显示。相反,它显示用户提交的内容。
控制器动作中的示例:
scheduledcall.Content = "Mark my words!";
ViewBag.message = scheduledcall.Content;
return View(scheduledcall);
在视图上,我输出 @ViewBag.message(在控制器中设置以匹配 schedulecall.Content 属性的值)。视图中的输出是“Mark my words!”,但内容的文本区域 (@Html.TextAreaFor(model => model.Content)) 显示的是用户输入的文本,而不是“Mark my words!”。
如何让视图在文本区域中显示更新的值?