在我的一个Windows应用程序中,我正在使用SQL Server 2008 R2。哪个列的数据类型为time(1)
。
我在该列中有一个虚拟值,可以说09:00:00
格式为HH:mm:ss
。
现在,当我在代码中检索相同的值并将其存储到网格中时。我使用以下代码。
VSFlexShift.set_TextMatrix(i, 2, objShiftMasterDTO.SHIFT_START.ToString("HH:mm:ss"));
但是我收到了错误
输入字符串的格式不正确
当我存储ex:
的日期值时Column: date
datatype: DateTime
Value: 2015-11-30 15:05:01.120
当我尝试在代码
中检索它时 VSFlexHoliday.set_TextMatrix(i, 3, objHolidayMasterDTO.HOLIDAY_DATE.ToString("dd/MM/yyyy"));
返回:30/11/2015
。
现在我需要先得到我提到的时间格式9:00:00
。怎么弄?任何帮助表示赞赏。
答案 0 :(得分:0)
自CLR方time
mapped with TimeSpan
起,TimeSpan
格式与<{1}}格式的小位不同。
来自自定义TimeSpan格式字符串;
自定义
DateTime
格式说明符不包含占位符 分隔符号,例如将小时与小时分开的符号, 几分钟或几秒钟的小时数。相反,这些 符号必须作为字符串包含在自定义格式字符串中 文字。例如,TimeSpan
将句点("dd\.hh\:mm"
)定义为 天数和小时之间的分隔符,以及冒号(.
)作为分隔符 小时和分钟之间。
这就是为什么您需要将:
用于分隔符并需要使用hh
specifier,因为\:
没有TimeSpan
说明符作为自定义说明符。
HH
或
VSFlexShift.set_TextMatrix(i, 2, objShiftMasterDTO.SHIFT_START.ToString("hh\\:mm\\:ss"));
进一步阅读: