dt.Rows.Count 如何从文本框搜索并在gridview中显示
dt.Rows.Count How to search from the textbox and show in the gridview
我希望用户在文本框中输入内容并在 gridview 上显示结果
我的密码是
protected void Button1_Click(object sender, EventArgs e)
{
String Artists = System.Configuration.ConfigurationManager.ConnectionStrings["FleetManagementConnectionString"].ConnectionString;
System.Data.SqlClient.SqlConnection con = new System.Data.SqlClient.SqlConnection(Artists);
DataSet dt = new DataSet();
String Query = "Select AlbumName from [KazuTest].[dbo].[View_OneAlbums] where AlbumName LIKE '%' '" + TextBox1.Text + "' '%'";
SqlDataAdapter da;
SqlCommand cmd = new SqlCommand(Query,con);
con.Open();
da = new SqlDataAdapter(cmd);
dt.Clear();
da.Fill(dt);
if (dt.Rows.Count > 0)
{
gvSubDetails.DataSource = dt;
gvSubDetails.DataBind();
}
else
{
gvSubDetails.DataBind();
Label1.Text = "No Records Found";
}
con.Close();
}
但错误显示
(dt.Rows.Count > 0) 导致错误
Error 16 'System.Data.DataSet' does not contain a definition for
'Rows' and no extension method 'Rows' accepting a first argument of
type 'System.Data.DataSet' could be found (are you missing a using
directive or an assembly
reference?)
我该如何解决这个问题?
DataSet
s 不包含行。它们包含表格。最有可能的是,您应该使用 dt.Tables[0].Rows.Count
或者,您可以将 dt
的定义更改为 DataTable
。
将 DataTable 分配给 GridView,然后检查行:
dt.Clear();
da.Fill(dt);
gvSubDetails.DataSource = dt;
gvSubDetails.DataBind();
if (gvSubDetails.RowCount > 0) //Gridview uses RowCount, not Rows.Count
{
//ToDo...
}
我相信这应该可以。
我希望用户在文本框中输入内容并在 gridview 上显示结果
我的密码是
protected void Button1_Click(object sender, EventArgs e)
{
String Artists = System.Configuration.ConfigurationManager.ConnectionStrings["FleetManagementConnectionString"].ConnectionString;
System.Data.SqlClient.SqlConnection con = new System.Data.SqlClient.SqlConnection(Artists);
DataSet dt = new DataSet();
String Query = "Select AlbumName from [KazuTest].[dbo].[View_OneAlbums] where AlbumName LIKE '%' '" + TextBox1.Text + "' '%'";
SqlDataAdapter da;
SqlCommand cmd = new SqlCommand(Query,con);
con.Open();
da = new SqlDataAdapter(cmd);
dt.Clear();
da.Fill(dt);
if (dt.Rows.Count > 0)
{
gvSubDetails.DataSource = dt;
gvSubDetails.DataBind();
}
else
{
gvSubDetails.DataBind();
Label1.Text = "No Records Found";
}
con.Close();
}
但错误显示
(dt.Rows.Count > 0) 导致错误
Error 16 'System.Data.DataSet' does not contain a definition for 'Rows' and no extension method 'Rows' accepting a first argument of type 'System.Data.DataSet' could be found (are you missing a using directive or an assembly reference?)
我该如何解决这个问题?
DataSet
s 不包含行。它们包含表格。最有可能的是,您应该使用 dt.Tables[0].Rows.Count
或者,您可以将 dt
的定义更改为 DataTable
。
将 DataTable 分配给 GridView,然后检查行:
dt.Clear();
da.Fill(dt);
gvSubDetails.DataSource = dt;
gvSubDetails.DataBind();
if (gvSubDetails.RowCount > 0) //Gridview uses RowCount, not Rows.Count
{
//ToDo...
}
我相信这应该可以。