如何检查数据行值是否为空
本文关键字:是否 数据 何检查 检查 | 更新日期: 2023-09-27 18:33:52
>请告诉我,如果需要返回string
,这是在 DataRow 中检查 NULL 的正确方法
Convert.ToString(row["Int64_id"] ?? "")
或者应该像用DBNull.Value检查一样。
需要
比小得多if(row["Int64_id"] != DBNull.Value){...}else if{}
使用 DataRow.IsNull(string columnName) 检查数据列是否不为空
if (!row.IsNull("Int64_id"))
{
// here you can use it safety
long someValue = (long)row["Int64_id"];
}
使用列的index
或如果您有DataColumn
的实例,它有重载。如果您确定index
,请使用索引版本,它往往比其他选项更快。
我们创建了一个扩展类,可以在这些情况下提供帮助。
public static class DataRowExtensions
{
public static T FieldOrDefault<T>(this DataRow row, string columnName)
{
return row.IsNull(columnName) ? default(T) : row.Field<T>(columnName);
}
}
您可以使用如下:
int id = dataRow.FieldOrDefault<int>("Id");