2010-11-04 30 views
2

如何正確顯示「時間」數據類型的MS SQL到ASP.NET MVC頁面?當我把我的班級(班級中屬於DateTime類型的班級)列給我時,我稱之爲「ToShorTimeString()」方法,但隨後會顯示如下所示:「1/1/0001 12:00: 6:00 AM」用C#顯示和保存來自SQL的「time」數據類型?

我需要它能夠顯示爲,即‘11:00 AM’,並使更新時,能夠回數據庫保存正確的值作爲時間數據類型。

+0

'toString'方法,使用[自定義格式字符串](http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx)將是我的第一個想法... – 2010-11-04 00:46:18

+0

嘗試ToString()但沒有工作。在下面看到我的回覆:)謝謝。 – Saxman 2010-11-04 01:06:33

回答

1

那麼我已經改變了那個SQL列來使用DateTime,而不是:)爲什麼不簡單!感謝所有的答覆。

1
myDate.ToString("hh:mm tt"); 
+0

我試過,但它不起作用。這是當前存儲在數據庫中的內容:** 15:00:00.0000000 **,當映射到我的類爲DateTime對象時,調用** myTime.ToString(「hh:mm tt」)**將返回此:** 1/1/0001 12:00:00 AM **。事實上,無論數據庫中存儲了什麼值,它總是返回** 1/1/0001 12:00:00 AM **。 – Saxman 2010-11-04 00:55:51

+0

您是否嘗試過使用C#數據類型TimeSpan? – 2010-11-04 01:04:02

+0

我也試過TimeSpan,使用它時,它會顯示全零。謝謝。 – Saxman 2010-11-04 01:06:13

1
Timespan ts = TimeSpan.Parse("15:00:00.0000000"); 
DateTime dt = new DateTime(ts.Ticks); 
Response.Write(dt.ToShortTimeString()); 

在這裏你去。

output: 3:00 PM