ADO.NET - ADO.NET DataTable
ADO.NET DataTable
DataTable hiển thị dữ liệu quan hệ thành dạng bảng. ADO.NET cung cấp một lớp DataTable để tạo và sử dụng bảng dữ liệu một cách độc lập. DataTable cũng có thể được sử dụng với Dataset. Ban đầu, khi chúng ta tạo DataTable, DataTable không có lược đồ bảng. Chúng ta có thể tạo lược đồ bảng bằng cách thêm các cột và các ràng buộc vào bảng. Sau khi xác định lược đồ bảng, chúng ta có thể thêm các hàng vào bảng.
Lớp DataTable
public class DataTable : System.ComponentModel.MarshalByValueComponent, System.ComponentModel.IListSource,
System.ComponentModel.ISupportInitializeNotification, System.Runtime.Serialization.ISerializable,
System.Xml.Serialization.IXmlSerializable
Các phương lập của DataTable
Phương thức thiết lập | Mô tả |
---|---|
DataTable() | Khởi tạo một đối tượng mới. |
DataTable(String) | Khới tạo một đối tượng mới có tham số là tên bảng. |
DataTable(SerializationInfo, StreamingContext) | Khới tạo một đối tượng mới có tham số SerializationInfo và StreamingContext. |
DataTable(String, String) | Khới tạo một đối tượng mới có tham số là tên bảng và namespace. |
Các thuộc tính DataTable
Thuộc tính | Description |
---|---|
Columns | Lấy danh sách các cột |
Constraints | Lấy danh sách các ràng buộc trong bảng. |
DataSet | Lấy một DataSet trong bảng. |
DefaultView | It is used to get a customized view of the table that may include a filtered view. |
HasErrors | Kiểm tra xem có lỗi trong bất kỳ hàng nào trong bảng của DataSet không. |
MinimumCapacity | Khởi tạo kích thước ban đầu cho bảng. |
PrimaryKey | danh sách các cột là khóa chính. |
Rows | Danh sách các mẫu tin. |
TableName | Tên của bảng dữ liệu. |
Các phương thức DataTable
Phương thức | Description |
---|---|
AcceptChanges() | Thay đổi dữ liệu trong bảng. |
Clear() | Xóa tất cả dữ liệu trong DataTable. |
Clone() | Tạo bảng sao cấu trúc trong DataTable. |
Copy() | Tạo bảng sao có cấu trúc và dữ liệu trong DataTable. |
CreateDataReader() | Tạo ra một DataTableReader tương ứng với dữ liệu trong DataTable. |
CreateInstance() | Tạo ra một đối tượng DataTable mới. |
GetRowType() | Lấy kiểu dòng dữ liệu. |
GetSchema() | Lấy lược đồ của bảng. |
ImportRow(DataRow) | Sao chép một DataRow vào một DataTable. |
Load(IDataReader) | Được sử dụng để thêm vào DataTable với các giá trị từ nguồn dữ liệu bằng IDataReader được cung cấp. |
Merge(DataTable, Boolean) | Trộn DataTable với DataTable hiện tại. |
NewRow() | Tạo một mẫu tin mới. |
Select() | It is used to get an array of all DataRow objects. |
WriteXml(String) | It is used to write the current contents of the DataTable as XML using the specified file. |
Ví dụ DataTable
Trong ví dụ này, chúng a sẽ tạo một bảng dữ liệu và xuất nó ra trình duyệt.
// DataTableForm.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="DataTableForm.aspx.cs"
Inherits="DataTableDemo.DataTableForm" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
</div>
<asp:GridView ID="GridView1" runat="server">
</asp:GridView>
</form>
</body>
</html>
CodeBehind
// DataTableForm.aspx.cs
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace DataTableDemo
{
public partial class DataTableForm : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
DataTable table = new DataTable();
table.Columns.Add("ID");
table.Columns.Add("Name");
table.Columns.Add("Email");
table.Rows.Add("101", "Rameez","rameez@example.com");
table.Rows.Add("102", "Sam Nicolus", "sam@example.com");
table.Rows.Add("103", "Subramanium", "subramanium@example.com");
table.Rows.Add("104", "Ankur Kumar", "ankur@example.com");
GridView1.DataSource = table;
GridView1.DataBind();
}
}
}
Kết quả: