使用ASP.NET GridView控件简单操作数据库数据 (asp.net gridview 数据库)

ASP.NET是微软公司推出的一种Web应用程序开发框架,它可以让开发人员快速地创建动态网页。而在大多数Web应用程序中,数据库是必不可少的一部分。ASP.NET提供了很多处理数据库的方式,其中GridView控件是一种非常常用的工具,它可以让我们轻松地将数据库中的数据显示在网页上,并可以方便地进行增删改查操作。

本文将介绍如何使用ASP.NET GridView控件实现简单的数据库数据操作,包括数据绑定、数据插入、数据删除和数据更新。

一、数据绑定

在ASP.NET中,GridView控件最基本的功能是将数据库中的数据绑定到网页上。下面是一个简单的示例,展示了如何使用GridView控件绑定Northwind数据库中的Customers表数据。

1.创建一个新的ASP.NET Web应用程序。

2.右键单击项目,在“Add”菜单中选择“New Item”选项。

3.在“Add New Item”对话框中选择“Web Form”,并将其命名为“Default.aspx”。

4.在“Default.aspx”页面中,添加一个GridView控件。

“`aspx

AutoGenerateColumns=”False”>

HeaderText=”Customer ID” />

HeaderText=”Company Name” />

HeaderText=”Contact Name” />

HeaderText=”Contact Title” />

“`

5.打开“Default.aspx.cs”页面,添加以下代码,将GridView控件与数据库连接并绑定数据。

“`c#

using System.Data.SqlClient;

public partial class _Default : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

// 配置数据库连接字符串

string connectionString = @”Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=Northwind;Integrated Security=True”;

// 创建连接并打开

SqlConnection connection = new SqlConnection(connectionString);

connection.Open();

// 创建 SELECT 查询

string query = “SELECT CustomerID, CompanyName, ContactName, ContactTitle FROM Customers”;

// 创建数据适配器并填充数据集

SqlDataAdapter adapter = new SqlDataAdapter(query, connection);

DataTable dataTable = new DataTable();

adapter.Fill(dataTable);

// 关闭连接

connection.Close();

// 绑定数据到 GridView 控件

GridView1.DataSource = dataTable;

GridView1.DataBind();

}

}

“`

6.运行项目,将在浏览器中看到绑定的数据。此时,你可以轻松地在GridView控件中列出数据库中的数据。

二、数据插入

在ASP.NET中,GridView控件还能够轻松地实现数据插入。下面是一个简单的示例,展示了如何使用GridView控件将数据插入到Northwind数据库中的Customers表中。

1.在“Default.aspx”页面中,添加以下代码,为GridView控件添加一个TemplateField。

“`aspx

AutoGenerateColumns=”False” OnRowCommand=”GridView1_RowCommand”>

HeaderText=”Customer ID” ReadOnly=”True” />

“`

2.在“Default.aspx.cs”页面中,添加以下代码,处理GridView控件中的“Add”按钮单击事件。

“`c#

protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)

{

if (e.CommandName == “Add”)

{

// 读取 TextBox 控件的值

string companyName = ((TextBox)GridView1.FooterRow.FindControl(“txtCompanyName”)).Text;

string contactName = ((TextBox)GridView1.FooterRow.FindControl(“txtContactName”)).Text;

string contactTitle = ((TextBox)GridView1.FooterRow.FindControl(“txtContactTitle”)).Text;

// 配置数据库连接字符串

string connectionString = @”Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=Northwind;Integrated Security=True”;

// 创建连接并打开

SqlConnection connection = new SqlConnection(connectionString);

connection.Open();

// 创建 INSERT 查询

string query = “INSERT INTO Customers (CompanyName, ContactName, ContactTitle) VALUES (@CompanyName, @ContactName, @ContactTitle)”;

// 创建命令对象并添加参数

SqlCommand command = new SqlCommand(query, connection);

command.Parameters.AddWithValue(“@CompanyName”, companyName);

command.Parameters.AddWithValue(“@ContactName”, contactName);

command.Parameters.AddWithValue(“@ContactTitle”, contactTitle);

// 执行命令并关闭连接

command.ExecuteNonQuery();

connection.Close();

// 重新绑定 GridView 数据

GridView1.DataBind();

}

}

“`

3.运行项目,将在GridView控件中看到一个“Add”按钮。单击该按钮,即可将数据插入到数据库中的Customers表中。

三、数据删除

在ASP.NET中,GridView控件还能够轻松地实现数据删除。下面是一个示例,展示了如何使用GridView控件删除Northwind数据库中的Customers表中的数据。

1.在“Default.aspx”页面中,添加以下代码,为GridView控件添加一个CommandField。

“`aspx

AutoGenerateColumns=”False” OnRowDeleting=”GridView1_RowDeleting”>

HeaderText=”Customer ID” ReadOnly=”True” />

HeaderText=”Company Name” />

HeaderText=”Contact Name” />

HeaderText=”Contact Title” />

“`

2.在“Default.aspx.cs”页面中,添加以下代码,处理GridView控件中的删除操作。

“`c#

protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)

{

// 读取 CustomerID 值

string customerID = GridView1.DataKeys[e.RowIndex].Value.ToString();

// 配置数据库连接字符串

string connectionString = @”Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=Northwind;Integrated Security=True”;

// 创建连接并打开

SqlConnection connection = new SqlConnection(connectionString);

connection.Open();

// 创建 DELETE 查询

string query = “DELETE FROM Customers WHERE CustomerID = @CustomerID”;

// 创建命令对象并添加参数

SqlCommand command = new SqlCommand(query, connection);

command.Parameters.AddWithValue(“@CustomerID”, customerID);

// 执行命令并关闭连接

command.ExecuteNonQuery();

connection.Close();

// 重新绑定 GridView 数据

GridView1.DataBind();

}

“`

3.运行项目,将在GridView控件中看到一个“Delete”按钮。单击该按钮,即可将选定的数据从数据库中的Customers表中删除。

四、数据更新

在ASP.NET中,GridView控件还能够轻松地实现数据更新。下面是一个示例,展示了如何使用GridView控件更新Northwind数据库中的Customers表中的数据。

1.在“Default.aspx”页面中,添加以下代码,为GridView控件添加Edit和Update两个模板列。

“`aspx

AutoGenerateColumns=”False” OnRowEditing=”GridView1_RowEditing” OnRowUpdating=”GridView1_RowUpdating” OnRowCancelingEdit=”GridView1_RowCancelingEdit”>

HeaderText=”Customer ID” ReadOnly=”True” />

<asp:label id="lblCompanyName" runat="server" text='’>

<asp:textbox id="txtCompanyName" runat="server" text='’ visible=”False”>

<asp:label id="lblContactName" runat="server" text='’>

<asp:textbox id="txtContactName" runat="server" text='’ visible=”False”>

<asp:label id="lblContactTitle" runat="server" text='’>

<asp:textbox id="txtContactTitle" runat="server" text='’ visible=”False”>

“`

2.在“Default.aspx.cs”页面中,添加以下代码,处理GridView控件中的编辑、更新和取消编辑操作。

“`c#

protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)

{

// 修改 GridView 控件的模板列为编辑模式

GridView1.EditIndex = e.NewEditIndex;

GridView1.DataBind();

}

protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)

{

// 读取 CustomerID 值

string customerID = GridView1.DataKeys[e.RowIndex].Value.ToString();

// 读取 TextBox 控件的值

string companyName = ((TextBox)GridView1.Rows[e.RowIndex].FindControl(“txtCompanyName”)).Text;

string contactName = ((TextBox)GridView1.Rows[e.RowIndex].FindControl(“txtContactName”)).Text;

string contactTitle = ((TextBox)GridView1.Rows[e.RowIndex].FindControl(“txtContactTitle”)).Text;

// 配置数据库连接字符串

string connectionString = @”Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=Northwind;Integrated Security=True”;

// 创建连接并打开

SqlConnection connection = new SqlConnection(connectionString);

connection.Open();

// 创建 UPDATE 查询

string query = “UPDATE Customers SET CompanyName = @CompanyName, ContactName = @ContactName, ContactTitle = @ContactTitle WHERE CustomerID = @CustomerID”;

// 创建命令对象并添加参数

SqlCommand command = new SqlCommand(query, connection);

command.Parameters.AddWithValue(“@CompanyName”, companyName);

command.Parameters.AddWithValue(“@ContactName”, contactName);

command.Parameters.AddWithValue(“@ContactTitle”, contactTitle);

command.Parameters.AddWithValue(“@CustomerID”, customerID);

// 执行命令并关闭连接

command.ExecuteNonQuery();

connection.Close();

// 取消编辑模式

GridView1.EditIndex = -1;

GridView1.DataBind();

}

protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)

{

// 取消编辑

GridView1.EditIndex = -1;

GridView1.DataBind();

}

“`

3.运行项目,将在GridView控件中看到一个“Edit”按钮和一个“Update”按钮。单击“Edit”按钮,将进入编辑模式;在编辑模式下,你可以修改数据并单击“Update”按钮,即可将修改保存到数据库中。如果不想保存修改,可以单击“Cancel”按钮,退出编辑模式。

结语

本文简单介绍了如何使用ASP.NET GridView控件实现数据库数据的绑定、插入、删除和更新。在开发Web应用程序时,使用GridView控件是非常方便的,可以省去自己编写大量的数据操作代码。但需要注意的是,有些功能,比如分页和排序,可能需要额外的配置和代码来实现。


数据运维技术 » 使用ASP.NET GridView控件简单操作数据库数据 (asp.net gridview 数据库)