1
我有不發送CreatedOn和CreatedBy回HttpPost創建操作創建操作。型號
這些都不是用戶定義的屬性和理想我不想讓他們在表單上顯示的。那麼,如何將這些屬性放入模型中,而不必將它們放在窗體上呢?他們是否應該隱藏在表單上?
的控制器
public virtual ActionResult Create()
{
var meeting = new Meeting
{
CreatedOn = DateTime.Now,
CreatedBy = User.Identity.Name,
StartDate = DateTime.Now.AddMinutes(5),
EndDate = DateTime.Now.AddHours(3)
};
ViewBag.Title = "Create Meeting";
return View(meeting);
}
[HttpPost]
public virtual ActionResult Create(Meeting meeting)
{
if (ModelState.IsValid)
{
_meetingRepository.InsertOrUpdate(meeting);
_meetingRepository.Save();
return RedirectToAction(MVC.Meetings.Details(meeting.MeetingId));
} else {
return View();
}
}
我會盡量隱藏字段的路線。我是否正確地考慮如果我禁用了隱藏文本框,那麼它們會被傳回控制器,還是會被忽略? – MrBliz 2011-04-10 14:04:40
@ Doozer1979,'disabled' =>沒有通過所有,'readonly' =>通過,但不能由用戶修改。但是因爲這是一個隱藏的領域,所以不要打擾任何「禁用」或「只讀」。 – 2011-04-10 14:05:29