2013-05-31 29 views
0

在我的MVC2應用程序中,我想以表格形式顯示日期爲2013年5月31日,但我得到的是5/31/2013 12:00:00 AM 我的控制器代碼是:錯誤顯示日期

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); 
    } 

型號:

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

使用'SELECT CONVERT(VARCHAR(10),GETDATE(),101)' – vikas

回答

0

在你TableInfo模型中,添加了上述的日期這個屬性:

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

{0:d} i部分是短日期格式標識符..您也可以自定義它,如{0:dd-MM-yyyy}。

或者您也可以通過轉換檢索日期:

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

或者

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