2013-05-31 1 views
0

Dans ma demande MVC2, je veux afficher la date sous forme de tableau comme 31/05/2013, mais ce que je reçois est 31/05/2013 00:00:00 mon code contrôleur est:Erreur dans l'affichage Date

public ActionResult MyAccount() 
    { 
     var user = User.Identity.Name; 
     System.Data.DataTable dt = new System.Data.DataTable(); 
     DataSet ds = new DataSet(); 
     string qry = "select * from Info where UserName= '" + user + "'"; 
     open_Connection(); 
     SqlDataAdapter da = new SqlDataAdapter(qry, conn); 
     da.Fill(ds); 
     dt = ds.Tables[0]; 
     foreach (DataRow row in dt.Rows) 
     { 
      tableInfo.Add(new TableInfo() { FileName = row[1].ToString(), Date = row[3].ToString() , Time = row[4].ToString(), Info = row[5].ToString() }); 
     } 
     close_Connection(); 
     return View(tableInfo); 
    } 

modèle:

public class TableInfo 
{ 
    public string UserName { get; set; } 
    public string FileName { get; set; } 
    public string Date { get; set; } 
    public string Time { get; set; } 
    public string Info { get; set; } 
} 
+0

Utiliser 'SELECT CONVERT (varchar (10), GETDATE(), 101)' – vikas

Répondre

0

Dans votre modèle TableInfo, ajouter cet attribut au-dessus de la date:

[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:d}")] 
public string Date { get; set; } 

{0: d} une partie i s l'identificateur de format de date courte. Vous pouvez également le personnaliser comme {0: dd-MM-yyyy}.

Ou vous pouvez simplement convertir la date récupérée par:

Date = DateTime.Parse(row[3].ToString()).ToShortDateString() 

Ou

Date = row[3].ToString("{0:d}")