ASP.NET本地SQL Server数据库C#网格视图数据绑定Visual Studio 2013

本文关键字:数据绑定 视图 Visual Studio 2013 网格 本地 NET SQL Server 数据库 | 更新日期: 2023-09-27 18:29:51

我需要一些帮助,因为我一直在尝试不同的东西,但似乎没有什么能正常工作——问题本身就是下面的问题。

如何使用C#背后的代码将数据绑定到带有本地SQL Server数据库的Visual Studio 2013中的网格视图?

这是我正在尝试的C#:

protected void Page_Load(object sender, EventArgs e)
{
    SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)'v11.0;AttachDbFilename=C:'Users'Guillermo'Desktop'HorsensHospital'App_Data'HospitalDB.mdf;Integrated Security=True;Connect Timeout=30");
    con.Open();
    SqlCommand cmd = new SqlCommand("SELECT [Task_temp_name], [Task_templatesID] FROM [Task_templates]", con);
    SqlDataAdapter sda = new SqlDataAdapter(cmd);
    DataSet ds = new DataSet();
    GridView1.DataSource = ds;
    GridView1.DataBind();
    cmd.ExecuteNonQuery();
    con.Close();
}

ASP.NET本地SQL Server数据库C#网格视图数据绑定Visual Studio 2013

您只是将空的DataSet分配给Gridview的DataSource

您需要使用.Fill方法来填充SqlDataAdapter中的DataSet。您不需要使用ExecuteNonQuery。这个方法只是执行您的查询。因此,它不会返回任何数据或其他内容。

还可以使用using语句来处理SqlConnectionSqlCommandSqlDataAdapter。当你使用数据库连接和对象时,你不需要.Close()

using(SqlConnection con = new SqlConnection(conString))
using(SqlCommand cmd = con.CreateCommand())
{
    cmd.CommandText = "SELECT [Task_temp_name], [Task_templatesID] FROM [Task_templates]";
    using(SqlDataAdapter sda = new SqlDataAdapter(cmd))
    {
         DataSet ds = new DataSet();
         sda.Fill(ds);
         GridView1.DataSource = ds;
         GridView1.DataBind();
    }
}

您应该使用这样的语句:使用SqlDataAdapter时,应使用fill方法填充数据集然后设置GridView 的DataSource属性

    SqlCommand cmd = new SqlCommand("SELECT [Task_temp_name], [Task_templatesID] FROM     [Task_templates]", con);
    SqlDataAdapter sda = new SqlDataAdapter(cmd);
    DataTable dt = new DataTable();
    sda.Fill(dt);
    GridView1.DataSource = dt;
    GridView1.DataBind();
    con.Close();

您错过了Fill方法来填充数据集,这就是我认为您无法显示gridview的原因。

Fill Method是一种非常改进的方法Bcoz,无论您的查询返回什么,都应该填充到您的数据集中&则该数据集由Gridiview绑定希望这能帮助你

protected void Page_Load(object sender, EventArgs e)
{
        SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)'v11.0;AttachDbFilename=C:'Users'Guillermo'Desktop'HorsensHospital'App_Data'HospitalDB.mdf;Integrated Security=True;Connect Timeout=30");
        con.Open();
        SqlCommand cmd = new SqlCommand("SELECT [Task_temp_name], [Task_templatesID] FROM [Task_templates]", con);
        SqlDataAdapter sda = new SqlDataAdapter(cmd);
        DataSet ds = new DataSet();
        sda.Fill(ds);
        GridView1.DataSource = ds;
        GridView1.DataBind();
        cmd.ExecuteNonQuery();
        con.Close();

}

注意:您需要在Web.Config.Bcoz中创建连接字符串。如果您已经在那里创建了连接字符串,则无需再次创建。创建后,您只需要从Web.config 调用即可

SqlConnection con = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionStringNameFromWebConfig"].ConnectionString);

这是从web.config 调用连接字符串的语法