检查列是否返回空值的最佳方法(从数据库到.net应用程序)
我有一个带有DateTime列的表,该列可以具有NULL值
现在我使用ODBC连接连接到数据库,并将值传入.net / c#中的DataTable。
我可以通过去检查它是否为NULL
if(String.IsNullOrEmpty(table.rows[0][0].ToString()) { //Whatever I want to do }
String.IsNullOrEmpty是检查空值的正确方法。
在对象上使用DBNull.Value.Equals而不将其转换为字符串。
这是一个例子:
if (! DBNull.Value.Equals(row[fieldName])) { //not null } else { //null }
只需使用DataRow.IsNull 。 它已覆盖接受列索引 , 列名称或DataColumn对象作为参数。
使用列索引的示例:
if (table.rows[0].IsNull(0)) { //Whatever I want to do }
虽然该函数被称为IsNull
但它确实与DbNull
进行了比较(这正是您所需要的)。
如果我想检查DbNull但我没有DataRow怎么办? 使用Convert.IsDBNull 。
System.Convert.IsDbNull][1](table.rows[0][0]);
IIRC, (table.rows[0][0] == null)
将不起作用,因为DbNull.Value != null;
row.IsNull( “列”)
如果我们使用EF并在while循环中读取数据库元素那么,
using( var idr = connection, SP.......) { while(idr.read()) { if(Sting.ISNullOrEmpty(idr["ColumnNameFromDB"].ToString()) //do something } } }
检查一下
if(table.rows[0][0] == null) { //Whatever I want to do }
或者你可以
上述就是C#学习教程:检查列是否返回空值的最佳方法(从数据库到.net应用程序)分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
if(t.Rows[0].IsNull(0)) { //Whatever I want to do }
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/958762.html