Время и дата и время в формате Informix и .NET - PullRequest
1 голос
/ 22 июня 2011

У меня есть таблица с полем starttime field.this этого типа DateTime, и я настраиваю его на (Hour to Minute) in Specials, потому что я хочу хранить только время в этом формате.

ex: 10:45

Теперь в моем коде: у меня следующая проблема:

 prd.StartTime = DateTime.Parse(record[1]);//.ToString("H:m"));


After Tracing: `StartTime = 6/22/2011 10:45:00 AM`

Когда я вставляю запись в эту таблицу, я получаю следующее исключение:

IBM.Data.Informix.IfxException: ERROR [22008] [Informix .NET provider][Informix]
Non-numeric character in datetime or interval.

РЕДАКТИРОВАТЬ: Когда я включаю default value для этого поля и пытаюсь вставить без starttime, и выбрать значение, которое я нашел, было 17:48, и когда я изменил Специальное на Year снова значение по умолчанию 2011-06-22 17:48:00.


EDIT2:

Я задаю StartTime свойство как string вместо DateTime, иУспешно вставить.Влияет ли это на достоверность этого поля позже.

Ответы [ 3 ]

3 голосов
/ 22 июня 2011
DateTime date = DateTime.Parse("10:45");

это работает для меня, я думаю, вам нужно проверить, какое значение хранится в записи [1]

2 голосов
/ 22 июня 2011

Я думаю, что это поможет вам:

prd.StartTime = DateTime.Parse(record[1].ToString());
1 голос
/ 22 июня 2011

DateTime.Parse("10:45") совершенно правильно. Однако он создаст экземпляр DateTime, содержащий сегодняшнюю дату и время, которое вы проанализировали.

Но ошибка, которую вы получаете, вероятно, вызвана тем фактом, что используемая база данных хочет сохранить дату как число.

...