指定的演员对日期选择器无效

Posted

技术标签:

【中文标题】指定的演员对日期选择器无效【英文标题】:Specified cast is not valid for the date picker 【发布时间】:2012-09-20 09:35:51 【问题描述】:

我尝试在评估我的选择器中的日期之前检查 null,因为我不允许输入任何日期:

 <telerik:RadDatePicker ID="rpick_to_date" runat="server" Visible="false" SelectedDate='<%# Eval("to_date") == null ? "" : Eval("to_date") %>'>
                                            <Calendar UseColumnHeadersAsSelectors="False" UseRowHeadersAsSelectors="False" ViewSelectorText="x">
                                            </Calendar>
                                            <DatePopupButton HoverImageUrl="" ImageUrl="" />
                                            <DateInput DateFormat="dd/MM/yyyy" DisplayDateFormat="dd/MM/yyyy">
                                            </DateInput>
 </telerik:RadDatePicker>

但我一直收到以下错误:

指定的转换无效。

【问题讨论】:

什么是to_date?它是可以为空的日期时间还是...? 它是 nullable 日期 informix 数据库 摆脱内联的 Eval 代码,开始使用一些硬编码的字符串,看看哪些可以和哪些不能转换为“SelectedDate”。这可能是它不接受 string.empty 或者它可能是,正如@simonlchilds 所提到的,您正在尝试评估一个不可为空的日期时间是否为空并且可能不喜欢它。可能只是“to_date”的值不是可接受的日期格式? 也许你需要改用DbSelectedDate @just_name 添加为答案 :) ... 【参考方案1】:

我相信您应该使用DbSelectedDate 属性而不是SelectedDate 来绑定值

使用 DbSelectedDate 属性而不是 SelectedDate 来获取或设置 以数据库友好的方式显示 RadDatePicker 的日期内容。唯一的 与 SelectedDate 的区别在于,如果 新值为 null 或 DBNull。设置空值将在内部 将 SelectedDate 恢复为空值,即输入值将 为空。

From here

【讨论】:

【参考方案2】:

您可以使用此代码(删除字符串“”) - SelectedDateNullable&lt;DateTime&gt;

SelectedDate='<%# Eval("to_date")%>'

【讨论】:

以上是关于指定的演员对日期选择器无效的主要内容,如果未能解决你的问题,请参考以下文章

日期选择器中带有时刻 js 的无效日期

反应日期选择器 - 无效的时间值

如何设置指定的日期引导日期选择器?

日期选择器验证 WPF

vbscript HTML5输入类型日期 - 为日期选择器指定默认值

vbscript HTML5输入类型日期 - 为日期选择器指定默认值