-1

我的网站上有 CheckBoxes,选中后,它们会以下列方式存储到数据库中:

Cust.IsCust = Convert.ToInt16(cb_IsCust.Checked ? 0 : 1);

现在,我将其更改为带有“是/否”选项的单选按钮,而不是复选框。如何在数据库中插入这些选项,1 表示是,0 表示否。如果没有检查,我需要插入 null (管理要求)。

先感谢您。

4

3 回答 3

2

我认为这就是你想要做的。

如果您要立即插入数据库,请使用字符串:

string IsCust;
......
Cust.IsCust = (rb_IsCustYes.Checked || rb_IsCustNo.Checked)? rb_IsCustYes.Checked.ToString() : "NULL";

如果您稍后要插入数据库:

Cust.IsCust = (rb_IsCustYes.Checked || rb_IsCustNo.Checked)? Convert.ToInt16(rb_IsCustYes.Checked) : -1;

string IsCustValue = (IsCust == -1)? "NULL":IsCust.ToString();
于 2013-03-06T16:18:47.840 回答
1

在您的数据库中,您应该将此字段设置为位以允许 NULL 值。但是要小心可能的警告。

http://www.mssqltips.com/sqlservertip/2548/using-bit-columns-with-nulls-when-three-options-exist-in-sql-server/

于 2013-03-06T16:19:11.790 回答
0

简单的

Cust.IsCust = Convert.ToInt16(radiobutton1.Checked ? 1 : 0);

1 用于检查的第一个 rdb 2 用于检查的第二个 rdb

不想要第二个单选按钮条件。因为当您选择第一个单选按钮时,第二个单选按钮未被选中。所以,你可以节省0

编辑:

string sss="NULL";

if(radiobutton1.Checked==true)
{
sss="1";
}
else if(radiobutton2.Checked==true)
{
sss="0";
}
于 2013-03-06T16:30:48.223 回答