Использование вставки создает исключение в поле Datetime - PullRequest
0 голосов
/ 27 апреля 2009

При попытке выполнить комментарий вставки с использованием Insert CLass я получаю следующее исключение:

Преобразование типа данных char в тип данных datetime привело к значению datetime вне диапазона.

Я использую следующие настройки глобализации:

<globalization uiCulture="en-AU" culture="en-AU"/>

И мой формат даты: "дд / мм / ГГГГ"

Я могу обойти исключение, используя:

ci.Date.HasValue?ci.Date.Value.ToString("yyyy-MM-dd HH:mm:ss"):null

Но это уродливо, потому что ... я могу что-то сделать, чтобы дозвуковой выбор моих настроек глобализации?

Спасибо

Луис

Ответы [ 2 ]

0 голосов
/ 30 апреля 2009

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

Если вы передадите тип данных, который Subsonic не распознает, например DateTime? (В отличие от Date), то Subsonic будет вызывать метод объекта ToString () и устанавливать для его DataType значение string, что может вызвать проблему Вы упоминаете выше. Вы должны иметь возможность просто передать ci.Date.Value без необходимости вызова собственного метода ToString ("format").

0 голосов
/ 27 апреля 2009

Используете ли вы SQLServer 2008 столбец "Дата"?

Я вижу ту же проблему с этим сценарием, и в моем случае это потому, что для свойства класса Subsonic для типов «Дата» SQL Server установлено значение «Строка».

См. Сгенерированное свойство Subsonic 2.2 для SQL Server 2008 Дата

Если вы можете подтвердить это, я был бы признателен, и я опубликую проблему в списке проблем проекта Subsonic.

...