我有Dates列表,并且在控制器中我为DropDown列表创建代码,在表格中我把日期设置为DATE格式,也在模型i配置ad dd / MM / yyyy,在下拉列表中我得到的日期包含时间,但是我需要在列表中的日期。
控制器中的代码:
ViewBag.Datum = new SelectList(db.tbl_relacii.Where(x => x.DatumR >= date), "DatumR", "DatumR");
视图中的代码:
@Html.DropDownList("Datum", null, htmlAttributes: new { @class = "form-control" })
型号代码:
[DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
[DataType(DataType.Date)]
[Column(TypeName = "date")]
public DateTime DatumR { get; set; }
这是数据库中的数据:
如何在DropDown列表中获取正确的数据
答案 0 :(得分:1)
修改您的控制器代码,如下所示
public ActionResult Create()
{
var date = DateTime.Now.Date;
ViewBag.AgentID = new SelectList(db.tbl_agenti, "aID", "agent_ime");
ViewBag.patnikID = new SelectList(db.tbl_patnici, "pID", "ime");
ViewBag.stanicaDO = new SelectList(db.tbl_stanici, "sID", "stanica");
ViewBag.stanicaOD = new SelectList(db.tbl_stanici, "sID", "stanica");
var tempList = db.tbl_relacii.Where(x => x.DatumR >= date).ToList();
var options = new List<SelectListItem>();
foreach(var item in tempList)
{
options.Add(new SelectListItem()
{
Text = item.ToString("d"),
Value = item
};
}
ViewBag.Datum = options;
return View();
}
在您的视图中定义如下
@Html.DropDownList("Datum", ViewBag.Datum as SelectList, "--Select--",
new
{
@Id = "drpDatum",
@class = "form-control"
})