如何将格式化的DateTime存储到数据库中DateTime类型的列中?

时间:2019-01-07 13:28:49

标签: c# datetime pdf-generation console-application datetime-format

我正在从数据集中的数据库中检索数据,并将其打印在pdf文档中。一个表有一个DateTime列,其值为"12/27/2018 12:00:00 AM"。我正在尝试将其格式化为dd/MM/yyyy,但没有成功,因为它期望DateTime并且格式化返回一个字符串值。我应该更改列数据类型还是可以维护它并格式化日期时间?

1 个答案:

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