我在ASP.net中有一个GridView,它是从SqlDataSource填充的。
DB表中的一列是Datetime,设置为30/04/2009,当我在asp中显示网格视图时,它显示为30/04/2009。(这很好)
然而,当我在网格视图中的行上点击编辑,然后点击更新而不更改日期时,我得到一个SQL错误,基本上说日期格式错误。这是因为它认为30指的是月份而不是白天。
我尝试通过设置<%@ Page uiCulture =“en-gb”culture =“en-gb”%>
来解决此问题但没有效果。
任何想法?
答案 0 :(得分:1)
最有可能的不是页面文化,而是SQL Server中的文化设置导致问题。
答案 1 :(得分:1)
当日期绑定到GridView时,它已经是String
而不再是DateTime
。我建议您将列的DataFormatString
设置为{0:d}
,这将根据页面用户界面显示日期。