【发布时间】:2009-07-24 13:11:45
【问题描述】:
我的数据库表中有一个可为空的 varchar 列。
我通过 objectdatasource 将 gridview 绑定到该表,并有一个 TemplateField,如下所示:
<asp:RadioButtonList ID="rblRequirementOption" RepeatDirection="Horizontal" runat="server" RepeatLayout="Flow"
SelectedValue='<%#Bind("RequirementOption")%>'>
<asp:ListItem Value="" Text="" style="display: none" />
<asp:ListItem Value="Need" Text="Need"></asp:ListItem>
<asp:ListItem Value="Do Not Use" Text="Do Not Use"></asp:ListItem>
</asp:RadioButtonList>
如果表中该列中有任何空值,我会收到错误消息:
"'rblRequirementOption' 有一个无效的 SelectedValue,因为它不存在于项目列表中。参数名称:值"
如您所见,我尝试添加一个值为“”的占位符单选按钮来容纳空值,这是处理此错误的常用方法,但在这种情况下,似乎“ " 和 DBNull.Value 不被认为是等效的。
我当然不必在绑定之前将空值转换为长度为零的字符串吗?
更新
实际上,这是正确的语法。 (我正在使用默认值替代品,结果搞混了。)
【问题讨论】:
标签: asp.net