As mentioned at
http://forums.asp.net/t/1958162.aspx?Null+value+when+passing+DateTime+value+from+View+to+Controller, you can add data handler as:
.Update(update => update.Action("Edit", "YourControllerName", new { entity = Model })
.Data("onUpdateRequest_Details"))
Then specify the fumction body as:
function onUpdateRequest_Details(e) {
e.LastStatementDate = $("#<YourDateFieldName>").val();
}
This will convert value from date to string and pass string.
Possibly, the following is not necessary (I removed DisplayFormat and ApplyFormatInEditMode, and the value was still passed correctly):
[DataType(DataType.Date), DisplayFormat(DataFormatString = "{0:dd-MMM-yyyy}", ApplyFormatInEditMode = true)]
public DateTime? <YourDateFieldName> { get; set; }