我的 MVC Web 应用程序中有一个更新类,用于从前端更新字段。这会调用数据库中的一个过程来更新表中的单元格。 (注意:该列可以接受NULL值)
如果我在我的 C# 代码中设置它,那么它会工作,因为它会检查前端是否传递了 NULL 并将其替换为空字符串(空格也可以):
update.Value = dataModel.Value == null ? string.Empty : dataModel.Value;
但是,当我查询数据库表时,它并没有在单元格中设置 NULL 值,而是一个空白。如何通过 C# 代码将 NULL 值传递到过程中?
最佳答案
您可以使用DBNull.Value
在数据库中传递空值。这是 DB 的 null
值的 .Net 替换。
所以你的代码变成了
update.Value = dataModel.Value == null ? DBNull.Value : dataModel.Value;
https://msdn.microsoft.com/en-us/library/system.dbnull.value(v=vs.110).aspx
关于c# - 通过 C# 将 NULL 值传递给存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42724690/