我刚刚在这里描述了我的问题:ObjectDataSource fails to parse string to DateTime。在几次谷歌查询后,我发现了这个链接:ObjectDataSource – Cannot convert value of parameter value from System.String to System.DateTime,以及简短说明:
我最近遇到的一个错误就是使用带有GridView的ObjectDataSource来更新日期。在进行更新时,ObjectDataSource始终使用en-US文化,而不是为应用程序定义的文化。 该错误已得到Microsoft的承认,但从未修复过。
涉及手动解析的解决方法是......不可接受:)你知道其他任何程序员更友好的解决方案吗?
答案 0 :(得分:0)
尽管此问题显然从未修复过,但您可以使用this link中提供的几种解决方法。不确定为什么解析是不可接受的。它可以在一行代码中完成:
DateTime myDate = DateTime.Parse(myTextBox.Text, CultureInfo.CurrentCulture.DateTimeFormat);
观察文化没有硬编码(这是我能想到的唯一可能导致这种情况不可接受的原因)。