所以我正在构建一个将数据库查询到gridview中的应用程序(我正在使用C#webforms),而我使用的其中一个页面/查询通常不返回任何行。如果SQL语句将零行返回到gridview,是否有办法接近if / else语句或类似函数?我的代码如下。谢谢你们。
da1.SelectCommand = new SqlCommand(
"SELECT FROM WHERE ORDER BY", cs1);
// CREATE PARAMETERS FOR THE ABOVE SQL COMMAND
da1.SelectCommand.Parameters.AddWithValue("@custtno", visitno);
// CLEAR AND FILL THE DATASOURCE FOR THE GRIDVIEW
ds1.Clear();
da1.Fill(ds1);
// POPULATE THE PATIENT MEDS DATAGRID
GridView_custHx.DataSource = ds1;
GridView_custHx.DataBind();
答案 0 :(得分:2)
您可以这样做:
if(dataset.tables[0].rows.count!=0)
{
bind your grid view here..
}
else
{
some other operation
}
希望这会有所帮助..
答案 1 :(得分:2)
您已经拥有了DataSet ds1
,然后绑定到网格。
假设DataSet中只有一个表:
if (ds1.Tables[0].Rows.Count == 0)
{
// no rows returned from the database, take some action
}
else
GridView_custHx.DataSource = ds1;
答案 2 :(得分:0)
在代码中没有足够的信息来查看正在发生的事情。例如'ds1'是数据集,数据表还是其他什么?如果它是一个数据表,那么你不会在ds1.tables [0]找到一个表,因为它只有一个表。
假设它是一个数据集,那么Avinash的代码将起作用。如果它是一个数据表,那么只需将对数据集的检查更改为数据表:
if(ds1.Rows.Count != 0)
{
GridView_custHx.DataSource = ds1;
GridView_custHx.DataBind();
}
else
{
Do Something else...
}