将表达式转换为数据类型datetime的算术溢出错误。声明已经终止。
我网站的文化是en-gb(18/10/2010)
我的数据库服务器的文化是en-us(10/18/2010)
日期存储在参数中;
command.Parameters.AddWithValue("@bookingdate", inputBookingDate.Text)
有没有办法在进入db之前将其转换为美国日期格式?
我试过这段代码;
Dim dbDate As String = command.Parameters("@bookingdate").Value.ToString
dbdate = DateTime.Parse(dbdate, New CultureInfo("en-US"))
command.Parameters("@bookingdate").Value = dbdate
但是得到错误'字符串未被识别为有效的DateTime。'
dbDate = "29/10/2010 00:00:00"
如何指定当前的文化?将dbDate标识为GB格式的有效日期时间。
感谢。
答案 0 :(得分:1)
试试DateTime.Parse。以GB格式读取日期,以美国格式写出。也是检查UI代码以确保在任何地方使用GB格式的好时机。或者更改数据库期望的格式。
如果您的数据库支持,您可以将日期写为时间戳,以尝试最小化您使用美国日期格式的次数。