我的视图中有一个隐藏字段,如下所示:
using (Html.BeginForm("Action", "Schedule"))
{
@Html.Hidden("Id", Model.Schedule.Id)
...
}
以及一个接收如下信息的操作方法:
public ActionResult AddEventToSchedule(Event NewEvent, Guid Id)
{
// Do something
}
即使 Model.Schedule.Id 不为空,我也会不断收到一个空的 Guid。我检查了 html 源代码,隐藏字段也是一个空的 Guid(使用断点来验证 Model.Schedule.Id 不为空)。
奇怪的是,当我尝试通过如下模型访问 Id 值时,html 隐藏字段已正确填充 guid,但传递给操作方法的模型为空。
public ActionResult AddEventToSchedule(Event NewEvent, ScheduleModel model)
{
// model.Schedule is null!
}