如果我有一个值D并且想确保它是 datetime 类型,那么以下之间有区别吗?
DateTime dtm = Convert.ToDateTime(D)
DateTime dtm = (DateTime)D
1 是转换,而 2 是强制转换?(我假设在某些方面 2 是一个更轻的操作?)
我什么时候应该使用 1 而不是 2?
编辑
(问题的背景)
D来自 a 中的一个单元格DataTable
。我正在做的是找到任何日期的单元格(通过datatable.columnname
),然后将ToOADate
函数应用于结果,然后再将其移动到 xl。所以如果dr
是我的DataRowView
,那么我有以下两种选择:
//Convert
DateTime dtm;
dtm = Convert.ToDateTime(dr[i - 1]);
xlWorkSheet.Cells[rowCount, i].value = dtm.ToOADate();
//Cast
DateTime dtm;
dtm = (DateTime)dr[i - 1];
xlWorkSheet.Cells[rowCount, i].value = dtm.ToOADate();