C# 如何在asp.net中将null值从cmd.Parameters.AddWithValue传递到数据库
当textbox为空时,我想在数据库中为列保存NULL。 这是我的密码C# 如何在asp.net中将null值从cmd.Parameters.AddWithValue传递到数据库,c#,sql,asp.net,C#,Sql,Asp.net,当textbox为空时,我想在数据库中为列保存NULL。 这是我的密码 cmd.Parameters.AddWithValue("@RedirectUris", ((RedirectUris.Text == "") ? DBNull.Value.ToString() : RedirectUris.Text)); 其中RedirectURI是文本框id。在此场景中,数据库将空值保存为非空值。 请帮我做这件事。你可以这样做: cmd.Parameters.AddWithValue("@Redire
cmd.Parameters.AddWithValue("@RedirectUris", ((RedirectUris.Text == "") ? DBNull.Value.ToString() : RedirectUris.Text));
其中RedirectURI是文本框id。在此场景中,数据库将空值保存为非空值。 请帮我做这件事。你可以这样做:
cmd.Parameters.AddWithValue("@RedirectUris",
string.IsNullOrEmpty(RedirectUris.Text)
? (object)DBNull.Value :
RedirectUris.Text);
检查文本框的值是否为null或空可能有意义。您可以使用短格式:
cmd.Parameters.Add(new SqlParameter("@RedirectUris", string.IsNullOrEmpty(RedirectUris.Text) ? (object)DBNull.Value : RedirectUris.Text));
// update
cmd.Parameters.AddWithValue("@ResponseTimeDays", responseTimeDays ?? Convert.DBNull);
// insert
new SqlParameter("@ResponseTimeDays", cinfo.ResponseTimeDays ?? Convert.DBNull)
它更好,因为在这里我们不需要创建新的SqlParameter。