第一我解釋我的問題,我們使用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