【问题标题】:Possible to fill SqlDataSource with SqlDataAdapter?可以用 SqlDataAdapter 填充 SqlDataSource 吗?
【发布时间】:2013-05-05 14:20:50
【问题描述】:

我目前有这段代码可以从后面的代码中使用 DataTable 填充 ASP.NET gridview。

 protected void bindGridView()
    {
        SqlConnection sqlConn = new SqlConnection(ConfigurationManager.ConnectionStrings["connstr"].ConnectionString);
        SqlCommand cmd = sqlConn.CreateCommand();
        cmd.CommandText = "SELECT id AS 'Member ID', name AS Name, age AS Age, sympton AS Sympton, phone AS Phone, nirc AS NIRC, address AS Address FROM tbl_customer_profile WHERE id = @id";
        cmd.Parameters.AddWithValue("@id", txtSearchID.Text);
        DataTable dtSearchResult = new DataTable();
        SqlDataAdapter daSearchResult = new SqlDataAdapter();

        try
        {
            sqlConn.Open();
            daSearchResult.SelectCommand = cmd;
            daSearchResult.Fill(dtSearchResult);
            gridSearchResult.DataSource = dtSearchResult;
            gridSearchResult.DataBind();
        }
        catch (SqlException ex)
        {
            lblStatus.Text = ex.Message;
        }
        finally
        {
            sqlConn.Close();
        }
    }

但我会失去网格的选择、排序、分页功能。所以我在想如果我可以填充到 SqlDataSource 而不是 Datatable 然后绑定到 Gridview,我就不必手动处理选择、排序等?

但我不能只是简单地做 daSearchResult.Fill(sqlDataSource1);

有什么解决方法吗?

【问题讨论】:

    标签: c# asp.net sqldatasource


    【解决方案1】:

    有点像 Neeraj 所说的,您可以使用 SqlDataSource 直接绑定到 gridview。 你不需要拥有所有的管道代码。

    asp.net 中是这样的

          <asp:GridView ID="grid" runat="server" DataSourceID="source"></asp:GridView>
          <asp:SqlDataSource ID="source" runat="server"></asp:SqlDataSource>
    

    在 C# 中就是这样

            SqlDataSource source =new SqlDataSource();
            GridView grid = new GridView();
    
            grid.DataSource = s;
            grid.DataBind();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-02-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-15
      • 2021-08-21
      • 2018-11-04
      相关资源
      最近更新 更多