web-dev-qa-db-fra.com

Comment formater la date dans la grille Web MVC

J'ai une grille Web et je n'utilise pas rasoir syntex. J'utilise plutôt le formulaire .aspx. Le code est ci-dessous;

<%
    var grid = new WebGrid(Model,defaultSort:"PublishDate",rowsPerPage:10);
    %>
    <%: 
       grid.GetHtml(
                          tableStyle: "wGrid",
                            headerStyle: "wGridHeader",
                    alternatingRowStyle: "alt",
                    columns: grid.Columns(
                    grid.Column("Title", canSort: false),
                    grid.Column("PublishDate", "Published on"),
                    grid.Column("CategoryName", "Category"),
                    grid.Column(format: (item) => Html.ActionLink("Details", "Browse", new { id = item.Title }))
                  )
               )
    %>

Maintenant, je souhaite formater la colonne 'PublishDate' à quelque chose comme 'jj-mmm-aaaa'. Avez-vous une idée de la façon de procéder?

16
kandroid
grid.Column(
    "PublishDate", 
    "Published on",
    format: (item) => string.Format("{0:dd-MMM-yyyy}", item.PublishDate)
)
39
Darin Dimitrov

Si la propriété DateTime est définie comme (peut contenir null):

public DateTime? WorkedDate { get; set; }

Utilisez ce format:

grid.Column("WorkedDate", "Last Worked On",
   format: (item) => item.WorkedDate != null 
   ? item.WorkedDate.ToString("MM/dd/yy") : "", canSort: true)

Sinon, s'il est défini comme ci-dessous (ne peut pas être null), sa date réelle ou .MinDate sera la valeur par défaut. 

public DateTime WorkedDate { get; set; }

Utiliser le format:

grid.Column("WorkedDate", "Last Worked On",
   format: (item) => item.WorkedDate != DateTime.MinValue ? 
   item.WorkedDate.ToString("MM/dd/yy") : "", canSort: true)
11
Mayank

Cela fonctionne pour moi et permet des valeurs nulles

grid.Column("End_Date",format: item => ((item.End_Date == null) ? "" : item.End_Date.ToString("MM/dd/yyyy"))),
5
Avery West

Cela a fonctionné pour moi:

grid.Column("Date_Of_Birth", "Date Of Birth", format: item => ((item.Date_Of_Birth == null) ? "" : item.Date_Of_Birth.ToString("MM/dd/yyyy")))
0
Sanjana V