XML เป็นภาษาที่อธิบายตัวเองและให้ข้อมูลตลอดจนกฎเกณฑ์ในการระบุว่ามีข้อมูลใดบ้าง เช่นเดียวกับ HTML XML เป็นส่วนย่อยของ SGML - StandardGeneralized Markup Language
คลาส XDocument มีข้อมูลที่จำเป็นสำหรับเอกสาร XML ที่ถูกต้อง ซึ่งรวมถึงการประกาศ XML คำแนะนำในการประมวลผล และความคิดเห็น
โปรดทราบว่าเราต้องสร้างวัตถุ XDocument หากเราต้องการฟังก์ชันเฉพาะที่จัดเตรียมโดยคลาส XDocument ในหลาย ๆ สถานการณ์ เราสามารถทำงานโดยตรงกับ XElement การทำงานโดยตรงกับ XElement เป็นโมเดลการเขียนโปรแกรมที่ง่ายกว่า
XDocument มาจาก XContainer ดังนั้นจึงสามารถมีโหนดย่อยได้ อย่างไรก็ตาม ออบเจ็กต์ XDocument สามารถมีโหนด XElement ลูกได้เพียงโหนดเดียว สิ่งนี้สะท้อนถึงมาตรฐาน XML ที่สามารถมีองค์ประกอบรูทได้เพียงรายการเดียวในเอกสาร XML XDocument มีอยู่ใน System.Xml.Linq เนมสเปซ
ตัวอย่าง
ให้เราพิจารณาสตริงด้านล่างซึ่งอยู่ในรูปแบบ XML และจำเป็นต้องเติมเป็น XML
<Departments>
<Department>Account</Department>
<Department>Sales</Department>
<Department>Pre-Sales</Department>
<Department>Marketing</Department>
</Departments>
using System;
using System.Xml.Linq;
namespace DemoApplication{
public class Program{
public static void Main(){
string xmlString = @"<Departments>
<Department>Account</Department>
<Department>Sales</Department>
<Department>Pre-Sales</Department>
<Department>Marketing</Department>
</Departments>";
XDocument xml = XDocument.Parse(xmlString);
Console.ReadLine();
}
}
} ในทำนองเดียวกัน หากเราต้องการแปลงไฟล์ที่มี xml เป็น XDocument เราสามารถใช้ XDocument.Load(path) .
ตัวอย่าง
using System;
using System.Xml.Linq;
namespace DemoApplication{
public class Program{
public static void Main(){
string xmlPath = @"D:\DemoXml.txt";
XDocument xml = XDocument.Load(xmlPath);
Console.ReadLine();
}
}
} ผลลัพธ์
ในทั้งสองกรณีข้างต้น xmlString จะถูกแปลงเป็น Xdoumet ดังนี้
