Из-за вашего названия я думаю item
- это DataRow
.Я не понимаю, почему вы конвертируете объект в строку, когда он на самом деле должен (и, вероятно, уже есть) DateTime
.
Вы должны попробовать это, если это работает, это лучший подход:
DateTime? firstDate = item.Field<DateTime?>("firstTime");
Field
- это метод расширения, который поддерживает типы, допускающие значения NULL.Таким образом, если столбец DataTable на самом деле является DateTime
-колонкой, но содержит DbNull
, тогда переменной будет присвоено DateTime?
.
Если вам нужна строка NULL
, если она пуста:
string result = firstDate?.ToString() ?? "NULL";