Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在asp.net中将null值从cmd.Parameters.AddWithValue传递到数据库_C#_Sql_Asp.net - Fatal编程技术网

C# 如何在asp.net中将null值从cmd.Parameters.AddWithValue传递到数据库

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

当textbox为空时,我想在数据库中为列保存NULL。 这是我的密码

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。