Sqldatareader读取错误



我正在使用sql datareader从mssql服务器提取数据。我希望数据阅读器中的值显示在数据视图中。我如何检查如果一个特定的字段是空的??

Row1["EmployeeID"] = x.GetString(2);当我使用这个从sqldatareader (x)提取数据时,它说' data是空的。此方法或属性不能使用/!!我还可以使用什么来读取空值

可以使用

Row1["EmployeeID"] = (x.GetValue(2) as string);

如果你使用Getstring,它将总是抛出异常,如果值不是字符串。如果你使用GetValue,它将返回对象,如果它是null,它将返回一个DBNull对象。

编辑:Use DataAdapter:

DataSet ds;
using (SqlConnection sqlCon = new SqlConnection(connectionString))
{
     sqlCon.Open();
     SqlCommand sqlCom = new SqlCommand("Select * From Table",sqlCon);
     SqlDataAdapter sqlDa = new SqlDataAdapter(sqlCom);
     sqlDa.Fill(ds);
}

你可以将ds绑定到你的DataGridView.DataSource。

我会这样编码:

Row1["EmployeeID"] =  x[2] == DbNull ? string.Empty : x.GetString(2);

相关内容

  • 没有找到相关文章

最新更新