我从数据库中提取数据(1条记录)并将每个值放入文本框或下拉列表中。其中一些值是DB.null。如果是,我将它们转换为“”(空白)。但是,一旦用户修改了文本框/下拉列表,他们就可以“保存”新的结果。我的问题是这样的:是否可以传递一个DB.null参数,并在数据库中设置一个等于该值的值?
如果用户留下一些空白,我希望能够保持该值是DB.null。有没有办法做到这一点?
另外,是否有可能,如果有一个文本框中的值,并且用户决定删除它,我也可以将它转换为DB.Null?这就是我试图做给你们的一些想法:
productName != ""
? myCommand.Parameters.AddWithValue("@ProductName", productName)
: myCommand.Parameters.AddWithValue("@ProductName", DBNull.Value);
貌似你试图'DBNull.Value'已经,并会失败? –
另一件你可以做的事情就是不将参数传递给存储过程 - 也就是说,如果没有做出选择。简单如'if txtBox.Length> 0 //传递参数其他//不传递参数' – JonH
空字符串是数据库中的有效值吗?如果是的话,你将如何区分故意的空字符串和“空”空字符串? – Chris