Как это сделать convert.NET DateTimeOffset в Sql2008 DateTimeOffset
Я не уверен, как правильно отформатировать переменную .NET DateTimeOffset
в виде строки для SqlServer 2008, чтобы исправить синтаксический анализ значения.
В настоящее время, если я предоставляю значение по умолчанию .ToString()
из обычного значения DateTimeOffset, это приводит к ошибкам.
Вот пример .ToString()
значения, которое ошибки (напр. Sql2008 это не нравится): '25/12/2008 2:12:21 PM +00:00'
Обновление
Просто чтобы уточнить, я знаю, что.ToString()
не находится в совместимом формате Sql2008. Я надеюсь, что кто-нибудь сможет сказать мне, что мне нужно предоставить к аргументу IFormattableProvider
(для метода .ToString()
), который является законным для нового типа DateTimeOffset
SqlDataType.
Ответ
Я ответил на это сам. Я вычислил правильный IFormattableProvider args
myDateTimeOffest.ToString("yyyy-MM-dd HH:mm:ss.ffffff zzz")
2 ответа:
DateToOffset.ToString поддерживает передачу строки формата для управления выводом. Попробуйте передать строку формата, совместимую с SQL 2008
В соответствии с BOL Типы совместимы.
Какую ошибку вы получаете? Вы указываете тип System Version, который будет 2008 в строке подключения?