Employee Class
namespace Helper
{
public class Employee
{
public int ID { get; set; }
public string Name { get; set; }
public bool Gender { get; set; }
public int Salary { get; set; }
}
}
DataHelper Classnamespace Helper
{
public static class DataHelper
{
public static string XMLPath = @"D:\Temp\XMLDemo.xml";
public static List<Employee> GetEmployees()
{
return new List<Employee>
{
new Employee {ID = 1, Name = "張三", Gender = false, Salary = 50000},
new Employee {ID = 2, Name = "李四", Gender = true, Salary = 45000},
new Employee {ID = 3, Name = "王五", Gender = false, Salary = 65000},
new Employee {ID = 4, Name = "丁六", Gender = true, Salary = 28000}
};
}
public static void XMLFileExist()
{
if (File.Exists(XMLPath) == false)
{
throw new FileNotFoundException(XMLPath);
}
}
}
}
主程式
using Helper;
using System.Xml.Linq;
namespace _01_CreateXML
{
class Program
{
static void Main(string[] args)
{
CreateXml_Simple();
// CreateXML_Source();
}
private static void CreateXml_Simple()
{
XDocument xDoc = new XDocument(
new XDeclaration("1.0", "utf-8", "yes"),
new XComment("Linq2XML"),
new XElement("Employees",
new XElement("Employee", new XAttribute("ID", 1),
new XElement("Name", "張三"),
new XElement("Gender", false),
new XElement("Salary", 50000)),
new XElement("Employee", new XAttribute("ID", 2),
new XElement("Name", "李四"),
new XElement("Gender", true),
new XElement("Salary", 45000)),
new XElement("Employee", new XAttribute("ID", 3),
new XElement("Name", "王五"),
new XElement("Gender", true),
new XElement("Salary", 65000)),
new XElement("Employee", new XAttribute("ID", 4),
new XElement("Name", "丁六"),
new XElement("Gender", true),
new XElement("Salary", 28000))));
// 會格式化 XML
xDoc.Save(DataHelper.XMLPath);
}
private static void CreateXML_Source()
{
List<Employee> EmployeeList = DataHelper.GetEmployees();
XDocument xDoc = new XDocument
(
new XDeclaration("1.0", "utf-8", "yes"),
new XComment("Linq2XML"),
new XElement
(
"Employees",
EmployeeList.Select(s =>
new XElement("Employee", new XAttribute("ID", s.ID),
new XElement("Name", s.Name),
new XElement("Gender", s.Gender),
new XElement("Salary", s.Salary)))
)
);
// SaveOptions.DisableFormatting 不格式化 XML,直接一行輸出
xDoc.Save(DataHelper.XMLPath , SaveOptions.DisableFormatting);
}
}
}
沒有留言:
張貼留言