我试图仅在需要时(检查)传递一个比特值。
我该如何正确地做到这一点?我的数据集没有变化。 SQL Server 2008。
if (chkExpired.Checked)
CmdGetDetails.Parameters.Add(new SqlParameter("@isExpired", 1));
答案 0 :(得分:8)
bit
指的是Boolean
所以你要在参数的值
中传递一个布尔值前:
CmdGetDetails.Parameters.AddWithValue("isExpired", chkExpired.Checked);
使用if块没有额外的需要。
答案 1 :(得分:4)
param.ParameterName = "@isExpired";
param.Value =chkExpired.Checked;
param.DbType = System.Data.DbType.Boolean;
cmd.Parameters.Add(param);
答案 2 :(得分:1)
只需使用复选框(chkExpired.Checked
)的值:
CmdGetDetails.Parameters.Add(new SqlParameter("@isExpired", chkExpired.Checked));
答案 3 :(得分:0)
你想要以任何方式添加参数,作为布尔值:
CmdGetDetails.Parameters.Add(new SqlParameter("@isExpired", chkExpired.Checked));