2012-03-14 215 views
1

我從存儲過程獲取數據,並想知道哪個是將DateTime(或日期)轉換爲字符串的最簡單方法?將日期轉換爲字符串

recipes.Add(new Recipe 
        { 
         RecipeId = reader.GetInt32(recipeIdIndex), 
         Name = reader.GetString(nameIndex), 
         Date = reader.GetDateTime(dateIndex), //Date is a string 

        }); 
+2

你有什麼試過?除了明顯的.ToString()之外,還有其他選項。我會提出這樣的問題:「爲什麼你只想將日期轉換成食譜類中的字符串?」我會讓它保留一個DateTime,直到它需要顯示。 – 2012-03-14 00:56:44

+0

當我使日期成爲日期時間時,我收到消息「Unable to cast object of type'System.Byte'to type'System.String'。」食譜是一個列表,我錯過了什麼?我無法得到它的工作。 – 2012-03-14 01:17:41

回答

1

將日期轉換爲字符串的最佳方法是完全沒有這樣做。

如果您必須將日期時間存儲爲字符串,請使用DateTime.ToString("o")或ISO8601格式.ToString("yyyy-MM-dd HH:mm:ss.ttt")作爲SynXsiS建議的格式。

確保您知道日期是在本地還是UTC時間 - 您可能需要在顯示給用戶之前調整值。

4

假設reader.GetDateTime()函數返回一個C#DateTime對象,所有你需要做的就是調用toString()就可以在參數傳遞,你怎麼樣進行格式化。

reader.GetDateTime(dateIndex).ToString("yyyy-MM-dd HH:mm:ss.ttt")