簡體   English   中英

SelectList ToShortDateString視圖包

[英]SelectList ToShortDateString viewbag

我的項目是使用EF 6.1的MVC5; 我使用以下方法生成下拉列表:

模型:

public partial class LogBook
{
    public string ID { get; set; }
    public string TheName { get; set; }
    public System.DateTime Day { get; set; }
}

控制器:

var list = db.LogBook.Where(i => i.TheName == xxx).OrderByDescending(x => x.Day).ToList();
ViewBag.Logbooks = new SelectList(list, "ID", "Day");

視圖:

@Html.DropDownList("logbookdate", ViewBag.LogBooks  as SelectList) 

結果顯示:

11/11/2014 12:00 AM

我怎樣才能顯示日期?

嘗試這個:

var list = db.LogBook.Where(i => i.TheName == xxx).Select(d=> new {ID= d.TheName, Day = d.Day.ToShortDateString()).OrderByDescending(x => x.Day).ToList();
 ViewBag.Logbooks = new SelectList(list, "ID", "Day");

尚未完成實際操作,但應該可以工作。

編輯:

IEnumerable<SelectListItem> selectList = 
    from c in db.LogBook
    where c.TheName equals xxx
    select new SelectListItem
    {
        Text = c.ID,
        Value = c.Day.ToShortDateString()
    };

然后將其綁定到前面的dropdonwlist。

您可以嘗試一下。 我沒有檢查語法。 希望它很好。

嘗試這個:

var list = db.LogBook.Where(i => i.TheName == xxx).OrderByDescending(x => x.Day).ToList();

查詢變更

IEnumerable<SelectListItem> selectList = db.LogBook
                                           .Where(i => i.TheName == xxx)
                                           .Select(c => new SelectListItem
                                           {
                                              Text = c.ID,
                                              Value = c.Day.ToShortDateString()                                                
                                           });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM