首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GridView和SqlDataSource

GridView和SqlDataSource
EN

Stack Overflow用户
提问于 2013-03-04 01:40:39
回答 2查看 1.9K关注 0票数 0

我正在尝试创建自己的命令来提取数据。工具箱SqlDataSource中的.aspx中的第一个im make:

代码语言:javascript
复制
 <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
        onselecting="SqlDataSource2_Selecting"></asp:SqlDataSource>

然后添加GridView:

代码语言:javascript
复制
 <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
        onselecting="SqlDataSource1_Selecting"></asp:SqlDataSource>

现在我想编写我自己的查询,所以我双击"SqlDataSource“>进入.aspx.cs:

代码语言:javascript
复制
protected void SqlDataSource1_Selecting(object sender, SqlDataSourceSelectingEventArgs e)    
{
    SqlDataSource1.SelectCommand = "SELECT name, num  FROM Table WHERE T_Name=@MyString";
}

问题出在哪里?当我运行这个应用程序时,它不工作。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-04 01:48:13

有几个问题。第一个问题是您使用了参数化查询,但尚未定义您的参数是什么。第二个问题是,您只是将一个SQL查询赋给您的SqlDataSource1,但是您并没有说过要这样做。

代码语言:javascript
复制
protected void Page_Load(object sender, EventArgs e)
{
    System.Data.Sql.SqlConnection conn= new System.Data.Sql.SqlConnection(/*your connection string comes here*/);

    string query= "SELECT name, num  FROM Table WHERE T_Name=@MyString";

    System.Data.DataTable dt = new System.Data.DataTable();
    System.Data.Sql.SqlCommand cmd = new System.Data.Sql.SqlCommand(query, conn);

    System.Data.Sql.SqlDataAdapter da1 = new System.Data.Sql.SqlDataAdapter(cmd );
    da1.SelectCommand.Parameters.AddWithValue("@MyString", your_string);

    da1.Fill(dt);

        if (dt.Rows.Count > 0)
        {
            GridView1.DataSource = dt;
            GridView1.DataBind();
        }
    }
票数 0
EN

Stack Overflow用户

发布于 2013-03-04 01:45:59

您未设置SqlDataSource1的参数。

我不能输入连接字符串。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15188592

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档