我在 LabelFors 中有我的值,但是当我进行回发时,模型具有默认值。
@using (Html.BeginForm("Delete", "Event", FormMethod.Post))
{
<p>
@Html.LabelFor(m => m.EventID, "Event ID")<br />
@Html.LabelFor(m => m.EventID, Model.EventID.ToString())
</p>
<p>
@Html.LabelFor(m => m.DayCode, "Type of Event")<br />
@Html.LabelFor(m => m.DayCode, Model.DayCode.ToString())
</p>
<p>
@Html.LabelFor(m => m.EventDate, "Date of Event")<br />
@Html.LabelFor(m => m.EventDate, Model.EventDate.ToShortDateString())
</p>
<p>
@Html.LabelFor(m => m.Subject, "Person or Interest")<br />
@Html.LabelFor(m => m.Subject, Model.Subject)
</p>
<p>
@Html.LabelFor(m => m.EventDesc, "Description")<br />
@Html.LabelFor(m => m.EventDesc, Model.EventDesc)
</p>
<table>
<tr>
<td>
@Html.ActionLink("Back", "Index", new { month = Model.EventDate.Month,
year = Model.EventDate.Year,
day = Model.EventDate.Day})
</td>
<td>
<input id="delete" type="submit" value="Submit Changes" />
</td>
</tr>
</table>
}
public ActionResult Delete(int eventID, int year, int month, int day)
{
//Find Event then return to Index
EventModel thisEvent = EventRepository.getDayEvent(eventID, year, month, day);
return View(thisEvent);
}
[HttpPost]
public ActionResult Delete(EventModel deletedEvent) //here Model only has 0, "", and 1/1/0001
{
EventRepository.DeleteEvent(deletedEvent);
return RedirectToAction("Index", new { year = deletedEvent.EventDate.Year, month = deletedEvent.EventDate.Month, day = deletedEvent.EventDate.Day });
}