如何为过滤的日期创建DropDown

时间:2017-03-23 18:43:50

标签: c# asp.net-mvc entity-framework asp.net-mvc-4

在控制器中,我为Date创建了DropDown列表,现在我需要过滤日期并从今天开始采取日期> =。

这里是DropDown列表的代码,我需要像这样过滤:

ViewBag.Datum = new SelectList(db.tbl_relacii, "DatumR", "DatumR").Where("DatumR" >= DateTime.Now.Date());

如何过滤DropDown列表? 同样在数据库表中,我像日期格式一样,但是当我在DropDown列表中没有数据时。我看到包括时间这样 23.03.2017 00:00:00

1 个答案:

答案 0 :(得分:1)

如果您在创建下拉列表项(即SelecList)之前尝试过滤结果,则需要先过滤它们,然后将过滤后的列表传递给SelectList的构造函数:

var date = DateTime.Now.Date; // as Ef wouldnl't be able to translate to sql 
                                 if we add it within Where directly
ViewBag.Datum = new SelectList(db.tbl_relacii
                                 .Where(x=>x.DatumR >= date),
                               "DatumR", 
                               "DatumR");