Проблемы с DateTime - PullRequest
       3

Проблемы с DateTime

0 голосов
/ 13 февраля 2020

Я пытался добавить несколько строк документа .csv в базу данных SQL, но в какой-то момент получаю следующее исключение:

SYSTEM.FORMATEXCEPTION: STRING '0000-00-00 00:00:01' WAS NOT RECOGNIZED AS A VALID DATETIME.
AT SYSTEM.DATETIMEPARSE.PARSE(READONLYSPAN`1 S, DATETIMEFORMATINFO DTFI, DATETIMESTYLES STYLES)
AT SYSTEM.DATETIME.PARSE(STRING S)
AT FRAME2020.OBJETOSERVICIOS.DEVOLVERSERVICIOS(STRING[] LISTA) IN 
D:\TRABAJO\FRAME2020\FRAME2020\CONEXIONBDD.CS:LINE 

И я не знаю, как его решить , я пытался с попробовать / кроме, но это не работает с моим подходом, какие-либо рекомендации?

Ответы [ 2 ]

2 голосов
/ 13 февраля 2020

Проблема в вашей дате, которую вы пытаетесь установить: 0000-00-00 00:00:01, нет дня 0, месяца 0 и года 0. Минимальное DateTime равно 1-1-0001 00:00:00

0 голосов
/ 13 февраля 2020

Вы не показали нам никакого кода, поэтому я делаю некоторые предположения здесь. Похоже, вы используете DateTime.Parse для анализа столбца в вашем csv источнике, который, как вы ожидаете, будет DateTime. Тем не менее, ваш источник имеет значения в этом столбце, которые не разбираются в действительные DateTime. Например, 0000-00-00 00:00:01.

Другие уже отметили, что 0000-00-00 00:00:01 не является действительным DateTime. Для решения этой проблемы вы можете использовать другой метод для анализа этого столбца. Например, DateTime.TryParse. Это попытается проанализировать string в DateTime и вернуть false, если он потерпит неудачу, или true, если это удастся. вы успешно проанализировали string в DateTime и можете сделать что-то другое, кроме FormatException, если он не работает.

...