我正在从数据集中的数据库中检索数据,并将其打印在pdf文档中。一个表有一个DateTime列,其值为"12/27/2018 12:00:00 AM"
。我正在尝试将其格式化为dd/MM/yyyy
,但没有成功,因为它期望DateTime并且格式化返回一个字符串值。我应该更改列数据类型还是可以维护它并格式化日期时间?
答案 0 :(得分:1)
我建议将数据库从字符串更改为DateTime。但是,如果不能,则可以使用类似的内容
DataTable dt1 = new DataTable();
DataTable dt2 = dt1.Clone();
//change columns type
dt2.Columns["Col A"].DataType = typeof(DateTime);
int colNumber = dt2.Columns.IndexOf("Col A");
foreach (DataRow row in dt1.AsEnumerable())
{
object[] rowData = row.ItemArray;
rowData[colNumber] = DateTime.Parse(row.Field<string>("Col A"));
dt2.Rows.Add(rowData);
}