Asp.net网格视图绑定到动态选择查询

时间:2014-08-08 10:16:35

标签: c# asp.net gridview datagridview

我想从后面的代码中传递sql select查询,并且基于该查询,数据应该自动填入网格视图。选择查询将是不同的,即它可以选择任何表或视图。我的代码如下。

代码隐藏

Protected void ExecuteButton_Click(object sender, EventArgs e)
{
   string sql = SqlQueryTextBox.Text;
   SqlDataSource1.SelectCommand = sql;
   GridView1.Databind();
}

Asp Markup

<asp:GridView ID="GridView1" runat="server"
    DataSourceID="SqlDataSource1" AutoGenerateColumns="true">

</asp:GridView> 

但网格视图中没有加载任何内容。到目前为止,我只使用网格视图来绑定单个表及其列。我的逻辑是否有任何错误?如何用动态数据填充网格?

2 个答案:

答案 0 :(得分:1)

这对我来说很好......

<asp:SqlDataSource ID="SqlDataSource1"  runat="server" ConnectionString="Data Source=*******Initial Catalog=*******;Persist Security Info=True;User ID=*******;Password=*******" ></asp:SqlDataSource>
<div>
    <asp:TextBox ID="SqlQueryTextBox" runat="server" ></asp:TextBox>
    <asp:Button ID="ExecuteButton"  OnClick="ExecuteButton_Click" runat="server" Text="Execute"/>
</div>
<div>
    <asp:GridView ID="GridView1" runat="server" DataSourceID="SqlDataSource1" AutoGenerateColumns="true" />
</div>

...

protected void ExecuteButton_Click(object sender, EventArgs e)
{
SqlDataSource1.SelectCommand = SqlQueryTextBox.Text;
GridView1.DataBind();
}

聚苯乙烯。我使用&#34; SELECT * FROM information_schema.tables&#34;作为我的选择陈述

我认为你需要检查你的连接字符串。然后回到我们身边。

答案 1 :(得分:0)

string sql = SqlQry.Text;
SqlDataSource1.SelectCommand = sql;
SqlDataSource1 .Select (DataSourceSelectArguments .Empty );
Gv_1.DataBind();