1- XML và Cơ Sở Dữ Liệu
2- Xdocument
3- Xử lý dữ liệu XML với ASP
4- LINQ to XML
XML và Cơ Sở Dữ Liệu
• Mở đầu
• Sự giống nhau và khác nhau giữa cơ sở dữ liệu và XML
• Loại cơ sở dữ liệu XML
• Trữ dữ liệu XML trong RDBMS
• Minh họa
Tầm quan trọng của XML
• Extensible Markup Language (XML) là chuẩn chính để
biểu diễn thông tin trên Internet đang có sự phát triển rất
nhanh
• Hầu hết các tổ chức đều dùng XML làm chuẩn chia sẻ
thông tin.
• Tất cả các framework phát triển ƯD hiện nay đều hỗ trợ
XML(.NET, Java).
• Tất cả các kiến trúc hệ thống WEB hiện đại được thiết kế
dựa trên XML
88 trang |
Chia sẻ: candy98 | Lượt xem: 658 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Cline Sever - Chương 6: XML và Database - Trần Kim Chi, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
1
XML và Database
1- XML và Cơ Sở Dữ Liệu
2- Xdocument
3- Xử lý dữ liệu XML với ASP
4- LINQ to XML
04.03.2013
2
XML và Cơ Sở Dữ Liệu
• Mở đầu
• Sự giống nhau và khác nhau giữa cơ sở dữ liệu và XML
• Loại cơ sở dữ liệu XML
• Trữ dữ liệu XML trong RDBMS
• Minh họa
Tầm quan trọng của XML
• Extensible Markup Language (XML) là chuẩn chính để
biểu diễn thông tin trên Internet đang có sự phát triển rất
nhanh
• Hầu hết các tổ chức đều dùng XML làm chuẩn chia sẻ
thông tin.
• Tất cả các framework phát triển ƯD hiện nay đều hỗ trợ
XML(.NET, Java).
• Tất cả các kiến trúc hệ thống WEB hiện đại được thiết kế
dựa trên XML.
Ứng dụng của XML
• Lưu trữ dữ liệu
• Trao đổi dữ liệu
• Hiển thị dữ liệu
• Tất cả đều liên quan đến dữ liệu
Ứng dụng của XML
• Data Storage
• Lưu trữ thuần túy dùng file XML
• Lưu trữ XML trong CSDL quan hệ
• Lưu trữ trong XML-enabled databases
Ứng dụng của XML
• Data Interchange
• Không cần sử dụng các middleware nếu ứng dụng có thể đọc ghi
trực tiếp XML.
• Trên 80% dữ liệu trao đổi trên mạng hiện nay dưới dạng XML (per
Gartner Group)
Ứng dụng của XML
• Hiển thị dữ liệu
• Cùng một nguồn thông tin được hiển thị trên nhiều loại thiết bị
khác nhau.
• Trước khi có XML . . .
• Phần lớn dùng HTML
• Hoặc hoặc 1 tập các trang để phục vụ cho các thiết bị khác nhau.
Ứng dụng của XML
• Sau khi có XML
• Lưu trữ dữ liệu dưới dạng XML documents
• Và 1 XSL document cho 1 loại thiết bị.
• Nếu xuất hiện loại thiết bị mới chỉ cần
• Phát triển protocol mới (e.g., WAP)
• Phát triển 1 XSL document mới
Ứng dụng của XML
• Sau đó có thể
• Chuyển cả XML và XSL xuống client.
• Hoặc
• Chuyển đổi XML và XSL tại server
• Chuyển nội dung markup phù hợp xuống client.
04.03.2013
10
Quản lý dữ liệu với quản lý tư liệu
• Quản lý dữ liệu:
• Cần cơ sở dữ liệu cho trữ dữ liệu
• Relational hay Object database
• Quản lý tư liệu
• Cần hệ thống quản lý nội dung
• Hệ thống quản lý nội dung có thể được xây dựng trên cơ sở dữ
liệu
Lưu trữ và Truy vấn dữ liệu với XML
• Dữ liệu XML có thể được lưu trữ bằng các cách sau:
• Dưới dạng hệ thống tập tin
• Cơ sở dữ liệu quan hệ
• Cơ sở dữ liệu XML
Lưu trữ dữ liệu XML dưới dạng tập tin
• Lưu trữ sử dụng trực tiếp tập tin XML khi:
• Dữ liệu được truy cập bởi nhiều hệ thống khác nhau
• Dữ liệu có thứ bậc
• Tập dữ liệu nhỏ
• Tốc độ truy cập không quan trọng
• Chỉ thực hiện các truy vấn đơn giản
• Các kiểu dữ liệu không quan trọng
Một trong những nguyên nhân chính để sử
dụng XML là nó hỗ trợ việc trao đổi dữ liệu bán
cấu trúc giữa các ứng dụng qua môi trường
Internet.
Việc sử dụng CSDL để lưu trữ văn bản XML sẽ
giúp cho người dùng truy cập thông tin tốt hơn.
XML rất mềm dẻo
Dữ liệu lưu trữ dưới dạng XML có thể dễ dàng
thay đổi cùng với sự tiến hóa của các dịch vụ
của hệ thống.
Tại sao sử dụng XML cho Databases
Có 2 loại chính:
• XML- enabled: Ánh xạ văn bản XML thành dữ liệu lưu
trữ trong CSDL.
• Native XML (NXD): Mô hình lưu trữ bên trong CSDL
được xây dựng dựa trên XML và sử dụng văn bản
XML như là đơn vị lưu trữ cơ bản.
Đơn giản là CSDL hỗ trợ lưu trữ văn bản XML
XML Databases là gì?
XML không phù hợp khi
• Luồng dữ liệu xử lý dưới dạng quan hệ
• Tốc độ xử lý là rất quan trọng
• Thành phần dữ liệu lưu trữ nằm ngoài các kiểu dữ liệu
mà XML có thể thể hiện
• Đặc biệt là các dữ liệu có bản chất dạng bảng.
• Schema dễ bị thay đổi
• Dữ liệu có quan hệ thứ bậc
• Phần ít dữ liệu có cấu trúc rõ ràng và cố định
04.03.2013
16
Sự giống nhau với cơ sở dữ liệu
• LưuTrữ: Table với tài liệu XML
• Lược đồ: Lược đồ cơ sở dữ liệu với DTD, ngôn ngữ
lược đồ XML
• Ngôn ngữ Query: SQL với XQL, XML-QL, QUILT
• Giao diện lập trình: JDBC với SAX, DOM
04.03.2013
17
Khác nhau với cơ sở dữ liệu
• Storge mechanism
• Indexing
• Built-in security
• Transaction support
• Data integrity
• Multi-user access
• Query across multiple data sources
Lưu trữ XML trong CSDL quan
hệ
• XML/relational mapping là quá trình chuyển đổi giữa mô
hình quan hệ và XML
• Văn bản XML có thể chuyển thành mô hình quan hệ và
ngược lại.
• Có nhiều cách thức khác nhau để thực hiện việc chuyển
đổi này.
Relational Model
Order of rows is not guaranteed
unless the ORDER clause is used in
one or more columns
Relations (tables)
Data is represented in n-ary
relations.
Has a domain that represents a set
of values
Attributes (columns)
Strict schema
Restrictive
The strict schema insures data
integrity
XML Model
The XML Model is hierarchical format
Data is represented in trees structures
There's nodes
Relationships between the node
The schema provides flexibility
Easily modified format
multiple elements represented in a hierarchy,
including a root“Comments” element
and one or more individual “Comment”
elements pertaining to a given item.
XML Model
XML Model VS. Relational Model?
XML data is hierarchical
XML data is self-describing
XML data has inherent ordering
An XML database contains
collections
relational data is represented
in a model of logical
relationships.
relational data is not self-
describing.
Relational data does not have
inherent ordering.
A relational database contains
tables
XML vs. Relational Database
CUSTOMER
Name Age
ABC 30
XYZ 40
ABC
30
XYZ
40
XML vs. Relational Database
XML vs. Relational Database
XML-to-Relational mapping
• Schema mapping
Database schema được tạo ra từ XML schema hoặc DTD để
lưu trữ văn bản XML.
• Data mapping
Chia nhỏ văn bản XML thành các relational tuples và chèn vào
CSDL quan hệ.
Inlined DTD graph
Generated Database Schema
Data Mapping
• XML file is used to insert data into
generated database schema
• Parser is used to fetch data from XML file.
94872
PEN
19.95
30
94866
BINDER</PROD_NAME
>
7.95
26
92219
LABELS</PROD_NAME
>
12.95
250
Example of an XML document
XML document decomposed
into a relation
Items
Order
Another Example.....
2003-07-28
456
XY-
47
14
16.80
B-
987
6
2.34
Sales Order
Items table
Example
Robert Roberts
25
John Doe
32
33
XML và Database
1- XML và Cơ Sở Dữ Liệu
2- Xdocument
3- Xử lý dữ liệu XML với ASP
4- LINQ to XML
Đối tượng XmlDocument
• Đối tượng XmlDocument nằm trong name space
System.Xml. Cần import / using System.Xml (VB.NET
hay C#)
• Là đối tượng chính của .NET thích hợp cho việc truy xuất dữ
liệu của một tệp XML đã tồn tại và cập nhật dữ liệu XML.
• Cho phép thực hiện các thao tác trên tập XML như trên một
table:
• Đọc dữ liệu
• Thêm một Node
• Xóa một Node
• Cập nhật thuộc tính và giá trị một Node
1) Chức năng
34
Đối tượng XmlDocument
1) Chức năng
Trong System.Xml chứa các lớp chính để thao tác
với tài liệu XML như: XmlDocument , XmlReader,
XmlTextReader, XmlValidatingReader,
XmlNodeReader, XmlWriter, và XmlTextWriter
35
2- Khai báo đối tượng XmlDocument
* Khác với khai báo một biến kiểu dữ liệu đơn giản:
Dim tênbiến As KiểuDữLiệu
Ví dụ : Dim Str As String
Dim Num as Integer
Dim Arr(5) as String
VB.Net
* Dim xmlDoc As new XmlDocument
(Khai báo sử dụng tư liệu XML)
ASP.Net
XmlDocument doc = new XmlDocument();
36
Đối tượng XmlDocument
3- Đọc, Ghi một tư liệu XML
a) Phương thức Load : đọc tệp XML
Cú pháp : xmlDoc.Load(PathName_of_XML_file)
Thông thường ta tạo thư mục DATA để lưu trữ các tệp XML
Cú pháp trên được sử dụng:
xmlDoc.Load(“../../DATA/book.xml”)
b) Phương thức Save : Lưu tệp tin XML
Cú pháp: xmlDoc.Save(PathName_of_XML_file)
37
Đối tượng XmlDocument
3- Đọc, Ghi một tư liệu XML
• Việc đọc một tài liệu XML tùy thuộc vào cấu trúc của
tài liệu đó, và thường có tính đệ quy vì khi đã tải tài
liệu XML vào đối tượng XMDocument thì việc duyệt
trên đối tượng này giống như duyệt trên một cấu trúc
cây.
• Mỗi node của tài liệu có thuộc tính NodeType cho biết
đó là node loại nào. Các giá trị của thuộc tính này là:
Element, Text, ...
38
Đối tượng XmlDocument
3- Đọc, Ghi một tư liệu XML
• Ví dụ: duyệt qua tất cả các node Text trong tài liệu
static public void Process(XmlNode node, int level)
{
if(node.NodeType == XmlNodeType.Text)
Console.WriteLine("{0}", node.InnerText);
foreach (XmlNode child in node.ChildNodes)
{
Process(child, level + 1);
}
}
39
Đối tượng XmlDocument
4- Các thao tác với xmlDocument
Tran Van Mot
1111111111
mot@gmail.com
Nguyen Thi Hai
2222222222
hai@yahoo.com
Bui Dinh Ba
3333333333
ba@gmail.com
40
Đối tượng XmlDocument
4- Các thao tác với xmlDocument
Lớp Person sau đây đã được xây dựng:
class Person
{
public string Name { set; get; }
public string Phone { set; get; }
public string Email { set; get; }
public Person(string name, string phone, string mail)
{
this.Name = name;
this.Phone = phone;
this.Email = mail;
}
public override string ToString()
{
return this.Name + ", " + this.Phone + ", " + this.Email;
}
}
41
Đối tượng XmlDocument
4- Các thao tác với xmlDocument
• Phương thức Duyệt tài liệu XML:
static public void TraverseFile()
{XmlDocument doc = new XmlDocument();
doc.Load(path);
XmlNode nod = doc.SelectSingleNode("contacts/person");//tìm node đầu tiên thỏa XPath
str += "TênPhoneEmail";
while (nod != null)
{ str += "";
str += "";
str += "";
str += nod["name"].InnerText;
str += "";
str += "";
str += nod["phone"].InnerText;
str += "";
str += "";
str += nod["email"].InnerText;
str += "";
str += "";
nod = nod.NextSibling;//chuyển sang node kế tiếp
}
str += "";
Label1.Text = str;} }
42
Đối tượng XmlDocument
4- Các thao tác với xmlDocument
• Đọc tài liệu XML:
static public List ReadElements()
{ List temp = new List();
XmlDocument doc = new XmlDocument();
doc.Load(inputFilePath);
XmlNodeList nodeList = doc.SelectNodes("contacts/person");
foreach (XmlNode node in nodeList)
{ temp.Add
new Person
{ node["name"].InnerText, node["phone"].InnerText,
node["email"].InnerText
}};
return temp;
}
43
Đối tượng XmlDocument
4- Các thao tác với xmlDocument
• Tìm kiếm trên tài liệu:
static public void Search(XmlNode root, string find, ref XmlNode result)
{
if (root.NodeType == XmlNodeType.Text)
if (root.InnerText == find)result = root;
foreach (XmlNode n in root.ChildNodes)
Search(n, name,ref result);
}
• Trong đó find là chuỗi cần tìm, nếu tìm được hàm này
trả về XmlNode chứa chuỗi find, ngược lại hàm trả về
giá trị null.
44
Đối tượng XmlDocument
4- Các thao tác với xmlDocument
• Tìm kiếm trên tài liệu:
• Đoạn mã dưới đây minh họa cách sử dụng hàm này.
XmlDocument doc = new XmlDocument();
doc.Load(inputFilePath);
XmlNode root = doc.SelectSingleNode("contacts");
XmlNode result = null;
Search(root, "Nguyen Thi Hai",ref result);
if (result == null)
Label1.Text = "không thấy";
else
Label1.Text =result.InnerText;
45
Đối tượng XmlDocument
4- Các thao tác với xmlDocument
• Thêm phần tử vào tài liệu: thực hiện các bước sau:
1. Tham chiếu đến tài liệu xDoc
2. Tạo phần tử con subNode, và bổ sung các thuộc tính nếu có
3. Tạo các TextNode cho subNode
4. Bổ sung các TextNode vào subNode
5. Bổ sung subNode vào tài liệu xDoc
6. Lưu tài liệu
46
Đối tượng XmlDocument
4- Các thao tác với xmlDocument
• Thêm phần tử vào tài liệu: thực hiện các bước sau:
static public void InsertElement(string cat, string name, string phone, string
email)
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(inputFilePath);
//tạo một phần tử "person" mới:
XmlElement elPerson = xmlDoc.CreateElement("person");
//bổ sung thuộc tính "category":
elPerson.SetAttribute("category", cat);
//tạo các phần tử "name", "phone" và "email":
XmlElement elName = xmlDoc.CreateElement("name");
XmlElement elPhone = xmlDoc.CreateElement("phone");
XmlElement elEmail = xmlDoc.CreateElement("email");
47
Đối tượng XmlDocument
4- Các thao tác với xmlDocument
• Thêm phần tử vào tài liệu: thực hiện các bước sau:
static public void InsertElement(string cat, string name, string phone, string
email)
{ //tạo các text node:
XmlText txtName = xmlDoc.CreateTextNode(name);
XmlText txtPhone = xmlDoc.CreateTextNode(phone);
txtEmail = xmlDoc.CreateTextNode(email);
//thêm các textnode vào "name", "phone", "email":
elName.AppendChild(txtName);
elPhone.AppendChild(txtPhone);
elEmail.AppendChild(txtEmail);
48
Đối tượng XmlDocument
4- Các thao tác với xmlDocument
• Thêm phần tử vào tài liệu: thực hiện các bước sau:
static public void InsertElement(string cat, string name, string phone, string
email)
{ //thêm phần tử vừa tạo vào node "person" mới:
elPerson.AppendChild(elName);
elPerson.AppendChild(elPhone);
elPerson.AppendChild(elEmail);
//lấy node gốc:
XmlElement elRoot = xmlDoc.DocumentElement;
//thêm "person" vào gốc:
elRoot.AppendChild(elPerson);
//lưu document:
xmlDoc.Save(outputFilePath);
}
49
Đối tượng XmlDocument
4- Các thao tác với xmlDocument
• Cập nhật một phần tử trong tài liệu:
• Việc cập nhật và xóa các phần tử trong tài liệu sẽ dựa
trên thao tác tìm kiếm. Nếu tìm được:
• Cập nhật giá trị mới
• Lưu tài liệu.
50
Đối tượng XmlDocument
4- Các thao tác với xmlDocument
• Cập nhật một phần tử trong tài liệu:
static public bool UpdateElement(string oldValue, string newValue)
{
try
{
XmlDocument doc = new XmlDocument();
doc.Load(inputFilePath);
//tìm node cần cập nhật:
XmlNode root = doc.DocumentElement;//lấy node gốc
XmlNode result = null;
Search(root, oldValue,ref result); 51
Đối tượng XmlDocument
4- Các thao tác với xmlDocument
• Cập nhật một phần tử trong tài liệu:
static public bool UpdateElement(string oldValue, string newValue)
{ if (result != null)
{ result.InnerText = newValue;
doc.Save(inputFilePath);
return true;
}
else return false;
}
catch
{ return false;
}
}
52
Đối tượng XmlDocument
4- Các thao tác với xmlDocument
• Xóa phần tử:
• Tìm kiếm phần tử cần xóa (giả sử phần tử tìm
được là result).
• Xác định phần tử cha của x, bằng thuộc tính
result.ParentNode
• Gọi phương thức RemoveChild từ phần tử cha
này, với tham số là result
53
Đối tượng XmlDocument
4- Các thao tác với xmlDocument
• Xóa phần tử:
static public bool Delete(string find)
{ try
{
XmlDocument doc = new XmlDocument();
doc.Load(inputFilePath);
//tìm node cần cập nhật:
XmlNode root = doc.DocumentElement;
//lấy node gốc
XmlNode result = null;
Search(root, find, ref result);
54
Đối tượng XmlDocument
4- Các thao tác với xmlDocument
• Xóa phần tử:
static public bool Delete(string find)
{ if (result != null)
{ result.ParentNode.RemoveChild(result); //xóa result
doc.Save(inputFilePath);
return true;
}
else return false;
}
catch
{ return false;
} }
55
Đối tượng XmlDocument
Đối tượng XmlTextWriter, XmlTextReader
Dùng để
- ghi dữ liệu ra tệp XML theo định dạng
- đọc dữ liệu từ tệp XML
56
Đối tượng XmlTextWriter
1- Khai báo
Imports System.Xml
Dim xtw as New XmlTextWriter(fileXml,Encoding.UTF8)
Khai báo các thuộc tính của đối tượng XmlTextWriter
Xtw.Formatting=Formatting.Indented
Xtw.Identation=3
57
Các phương thức
Ghi dữ liệu ra tệp XML
- xtw.WriteStartDocument()
- xtw.WriteComment(strComment)
- xtw.WriteStartElement(RootNodeName)
- xtw.WriteStartElement(NodeName)
- xtw. WriteEndElement() ‘ an Child Element
- xtw.WriteStartElement() ‘ Root Element
- xtw.WriteEndDocument()
- xtw.Flush()
- xtw.Close()
58
Đối tượng XmlWriter, XmlReader
Dùng để
- ghi dữ liệu ra tệp XML
- đọc dữ liệu từ tệp XML, thường dùng kèm với đối
tượng DataSet
59
Khai báo và tạo đối tượng XmlReader
Dim ds As New DataSet
Dim xmlDoc As XmlReader
xmlDoc = XmlReader.Create("Product.xml")
ds.ReadXml(xmlDoc)
‘ đưa dữ liệu XML và DataSet
DataGridView1.DataSource = ds.Tables(0)
‘ Gắn dữ liệu trong DataSet vào đối tượng lưới
DataGridView
60
DCT.XML
7
9
- Viết thủ tục (Sub) in ra màn hình kết quả học tập của sinh viên có mã số
“0812”
- Viết hàm (Function) trả về Điểm trung bình tích lũy của sinh viên có mã
số “0812”
- Sử dụng Sub, Function trong thủ tục Main() của Module1
61
ORDER.XML
<Order ID=“0801” Customer=“Văn Phương” Date=“08-
10-10”>
7
3
- Viết thủ tục (Sub) in ra màn hình Chi tiết hóa đơn có mã số
“0812”
- Viết hàm (Function) trả về tổng giá trị (Amount) có mã số
“0812”
- Sử dụng Sub, Function trong thủ tục Main() của Module1
62
63
XML và Database
1- XML và Cơ Sở Dữ Liệu
2- Xdocument
3. Xử lý dữ liệu XML với ASP
4- LINQ to XML
Data Provider Class
Data Provider Connection Class,
Command
Công dụng
OleDB OleDbConnection
OleDbCommand
Kết nối mọi ứng
dụng chạy .NET
Sql SqlConnection
SqlCommand
Chỉ dành cho SQL
Server
ODBC OdbcConnection
OdbcCommand
Khi có một ODBC
dữ liệu nguồn
Khai báo NameSpace
Using System.Xml
Using System.Console
Using System.Data
Using System.Data.OleDb //CSDL Khác
Using System.Data.SQLClient//SQL server
Ví dụ minh họa sử dụng DataSet
Mục tiêu: đưa dữ liệu từ table SV.sv vào tệp SV.xml
SV(HoTen Char(30), Lop Char(12))
1- Khai báo và tạo đối tượng Connection
2- Khai báo tạo đối tượng Adapter
3- Khai báo tạo đối tượng DataSet, nạp dữ liệu vào DataSet
4- Đưa dữ liệu trong DataSet vào đối tượng XML
5- Lưu dữ liệu XML
1- Khai báo đối tượng
Connection
OleDbConnection con;// Khai báo và kết nối với Access
String strcon;
strCon ="Provider=Microsoft.Jet.OleDb.4.0;Data Source =";
strCon = strCon + Server.MapPath(".") + "\\sv.mdb";
con = new OleDbConnection(strCon);
con.Open();
SqlConnection con;// Khai báo và kết nối với SQL
String strcon;
strCon=
“Server=ServerName;Database=DBName;uid=userName;pwd=password”;
con = new SqlConnection(strCon);
con.Open();
Đối tượng Connection
2-Khai báo, tạo và nạp đối tượng Adapter
Tạo DataAdapter
Hoặc
Sau đó
SqlDataAdapter da;
da= new SqlDataAdapter(sql, conn);
Da.Fill(ds);
SqlDataAdapter da = new
SqlDataAdapter();
da.SelectCommand.Connection = conn;
da.SelectCommand.CommandText = sql;
2-Khai báo, tạo và nạp đối tượng Adapter
Tạo DataAdapter
Hoặc
Sau đó
SqlDataAdapter da;
da= new SqlDataAdapter(sql, conn);
Da.Fill(ds);
SqlDataAdapter da = new
SqlDataAdapter();
da.SelectCommand.Connection = conn;
da.SelectCommand.CommandText = sql;
04/03/13 70
DataSet
• DataSet là một mô hình CSDL quan hệ thu nhỏ đáp ứng
nhu cầu của ứng dụng.
• Dataset chứa các bảng (DataTable), các quanhệ
(DataRelation) và các ràng buộc (constraint)
• Dataset thuộc tên miền: System.Data.Dataset.
• Khai báo
• New System.Data.Dataset()
Hoặc
• New System.Data.Dataset()
SQL Server 2000
DataSet
DataTable
DataTable
Thiết bị lưu trữ
OleDb Database
SqlDataAdapter
SqlConnection
DataTable
Bộ nhớ
OleDbDataAdapter
OleDbConnection
Dataset
Tạo DataSet
• Tạo Dataset
• Sau đó
DataSet ds = New DataSet();
Da.Fill(ds);
Ví dụ demo XMLDocument
4- Đưa dữ liệu trong DataSet vào đối
tượngXML (trong bộ nhớ)
xmlDoc.LoadXml(objDataSet.GetXml())
xmlDoc.Save(xmlFile)
‘ đối tượng xmlDoc đã được khai báo :
Dim xmlDoc As New XmlDocument
xmlDoc.Load(PathXML)
74
XML và Database
1- XML và Cơ Sở Dữ Liệu
2- Xdocument
3. Xử lý dữ liệu XML với ASP
4- LINQ to XML
7
5
Sử dụng LINQ to XML
• Để thao tác với các tài liệu XML tại thời điểm run-time,
.NET cài đặt sẵn các lớp và tiện ích đ