Asp.net mvc 我无法在MVC中保存日期
我有一个模型,它有两列,其中一列是date,但在post上我没有得到任何date,除非我给它赋值DateTime。现在,它将保存当前日期,但如果在datepicker中选择了其他日期,它将不会保存该日期,所以,我如何将日期传递给post上的视图模型,我可以传递下拉列表和文本框中的所有日期,但在哪里找不到日期。这是密码 我的视图模型Asp.net mvc 我无法在MVC中保存日期,asp.net-mvc,date,razor,Asp.net Mvc,Date,Razor,我有一个模型,它有两列,其中一列是date,但在post上我没有得到任何date,除非我给它赋值DateTime。现在,它将保存当前日期,但如果在datepicker中选择了其他日期,它将不会保存该日期,所以,我如何将日期传递给post上的视图模型,我可以传递下拉列表和文本框中的所有日期,但在哪里找不到日期。这是密码 我的视图模型 [Display(Name = "Requested Date")] [DisplayFormat(DataFormatString = "{0:yyyy-MM-dd
[Display(Name = "Requested Date")]
[DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)]
[DataType(DataType.Date)]
public DateTime? RequestDate { get; set; }
[Display(Name = "Job Number")]
public string JobNo { get; set; }
下面是创建后的方法代码
if (ModelState.IsValid)
{
var model = new PECEquipmentRequest()
{
ProjectId = pecEquipmentRequest.ProjectId,
JobNo = pecEquipmentRequest.JobNo,
RequestDate = pecEquipmentRequest.RequestDate
};
db.PECEquipmentRequests.Add(model);
db.SaveChanges();
}
这是我的剃须刀语法
<div class="form-group">
@Html.LabelFor(model => model.RequestDate, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.RequestDate, new { htmlAttributes = new { @Value = DateTime.Now,@class = "form-control datepicker" } })
@Html.ValidationMessageFor(model => model.RequestDate, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.JobNo, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.JobNo, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.JobNo, "", new { @class = "text-danger" })
</div>
</div>
您可以在服务器端将日期解析为所需格式
ParseExact(str,“yyyyMMddHHmmss”,CultureInfo.InvariantCulture) 使用
Html.TextBoxFor
您需要删除@Value=DateTime。现在
-使用HtmlHelper
方法时,切勿设置值
属性。如果您希望默认日期为DateTime.Now
,然后在将其传递给视图之前,在模型中设置值。@StephenMuecke,因为您仍然无法确定发生了什么,日期仍然是null@Shyju日期选择器会随着“TextBoxFor”消失,即使我手动添加日期,它仍然会显示空值,如果它null
its,因为您没有选择日期,或者在将值传递给视图之前,没有在模型中初始设置值。但是为什么要为该控件设置一个class=“datepicker”
。它建议您使用jQuery datepicker插件(在这种情况下,您的[DisplayFormat]
和[DataType]
属性是毫无意义的。如果您使用的是datepicker插件,请显示相关代码!
$(document).ready(function () {
$(".datepicker").kendoDatePicker();
});