我想將DataTable中的所有DateTime值轉換爲字符串。下面是該方法使用:設置DataRow中的項目值不起作用
private static void ConvertDateTimesToStrings(DataTable dataTable)
{
if (dataTable == null)
{
return;
}
for (int rowIndex = 0; rowIndex < dataTable.Rows.Count; rowIndex++)
{
for (int i = 0; i < dataTable.Columns.Count; i++)
{
DateTime dateTime;
try
{
dateTime = (DateTime)dataTable.Rows[rowIndex][i];
}
catch (InvalidCastException)
{
continue;
}
dataTable.Rows[rowIndex][i] = dateTime.ToString("dd.MM.yyyy hh:mm:ss");
}
}
}
後這一行的工作:
dataTable.Rows[rowIndex][i] = dateTime.ToString("dd.MM.yyyy hh:mm:ss");
我檢查dataTable.Rows的值的rowIndex] [i]和看到它仍然是一個DateTime,而不是串。爲什麼會發生這種情況,我該如何解決這個問題?
編輯:我試圖做到這一點,因爲我正在與api戰鬥,不幸的是我沒有選擇使用哪個組件。
精心設計的API使正確的用法變得簡單和不正確的用法變得困難或不可能,並且大多數內置的API用於像C#這樣的更現代化的語言,都設計良好。作爲一般規則,如果您發現自己以這種方式與API作鬥爭,現在是時候重新考慮您正在嘗試做什麼。 – 2008-10-15 11:46:17