第一我解释我的问题,我们使用BootStrap DatePicker,提交后Html.BeginForm它去控制器与选择日期和更新数据库在我的开发系统(PC),但相同编码在测试服务器和客户端系统中不起作用。在测试服务器上调试后,我发现日期选择器返回NULL到控制器 当我选择日期超过12天例如(13-10-2014)和小于12日期像(12-10-2014)工作正常。BootStrap Datepicker返回null从视图到控制器
我changed the culture为不变,但仍其返回空值到控制器
的BeginForm内定义的日期选择器,其他控件返回正确的价值观期待的DatePicker。
Html.BeginForm("MergeTeacherDetails","Profile", FormMethod.Post, new { id = "FormTeacherDetails" })))
的DatePicker的格式改变为( '日/月/年') 这里查看代码
@Html.LabelFor(m => m.DOB, "DOB", new { @class = "control-label"})
<div class="controls">
@{System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.InvariantCulture;
@Html.TextBoxFor(model => model.DOB, new { placeholder = "DOB",@readonly = "readonly",@class="ReadOnly" })}
</div>
这里的JavaScript
$('#DOB').datepicker({ startView: 2, autoclose: true, format: "dd/mm/yyyy", endDate: '@DateTime.Now.ToString("dd/MM/yyyy")', changeYear: true, changeMonth: true, weekStart: 1 });
这里DAL代码
public Nullable<System.DateTime> DOB { get; set; }
这里该控制器代码
public ActionResult MergeTeacherDetails(Staffs objStaffs)
{
int res = _staffRepository.InsertOrUpdate(objStaffs);
if(res>0)
{
_mapStaffRepository.SaveMapStaff(objStaffs.StaffId);
}
return RedirectToAction("/MyProfile/1");
}
在控制器参数objStaffs.DOB是回报为NULL
这
请帮我提前解决这个
感谢
在这个编码的问题是没有视图模型。如果我想创建ViewModel,它非常复杂,可以在整个项目中处理 – ManiMaranVasan 2014-11-03 10:05:09
您可以发布控制器代码吗? – freshbm 2014-11-03 10:07:47
你能帮我解决这个问题吗? – ManiMaranVasan 2014-11-03 11:12:03