这对我很管用。使用if检查数据集是否为空。如果是,则返回空值。但是数据集的检查是正确的还是应该用其他方法?

 da2 = new SqlDataAdapter("SELECT project_id FROM project WHERE _small_project_id = '" + cb_small_project.SelectedValue + "' ORDER BY NEWID()", conn);
 ds2 = new DataSet();
 da2.Fill(ds2);
 DataRow[] rowProject = dt2.Select();

 if (ds2.Tables[0].Rows.Count == 0)
    cmd.Parameters["@_project_id"].Value = guidNull;
 else
    cmd.Parameters["@_project_id"].Value = rowProject[0]["project_id"];

最佳答案

在我看来,正确的方法是同时检查:

ds2.Tables.Count

ds2.Tables[0].Rows.Count

07-27 13:23