可以通过使用由许多构造函数组成的 XmlSerializer 来控制编码为 XML 的对象,每当创建序列化程序并且使用的构造函数不采用类型时,就会创建一个临时程序集时间。创建序列化器,允许将对象序列化和反序列化为 XML 文档以及 XML 文档,XmlSerializer 的成员为 XmlSerializer、XmlSerializer(Type)、XmlSerializer(XmlTypeMapping)、XmlSerializer(Type, String)、XmlSerializer(Type ,类型()),XmlSerializer(类型,XmlAttributeOverrides),XmlSerializer(类型,XmlRootAttribute),XmlSerializer(类型,XmlAttributeOverrides,类型(),XmlRootAttribute,字符串),XmlSerializer(类型,XmlAttributeOverrides,类型(),XmlRootAttribute,字符串,字符串)、XmlAttributeOverrides、Type()、XmlRootAttribute、字符串、字符串、证据)。在本主题中,我们将学习 C# XmlSerializer。
语法:
XmlSerializer serializer_name = new XmlSerializer(type);
其中serializer_name是XmlSerializer的对象名称
以下是提到的示例:
C# 程序演示 XmlSerializer 将给定的书籍详细信息编码为 XML。
代码:
using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.Xml; using System.Xml.Serialization; using System.IO; //a class called check is defined public class check { //main method is called within which the instance of XmlSerializer is created which is used to encode the details of the book into XML public static void Main() { XmlSerializer ser_name = new XmlSerializer(typeof(Book)); Book bookdetails = new Book("Shobha Shivakumar", "Meaning of life", 2020); ser_name.Serialize(Console.Out, bookdetails); Console.ReadLine(); } } //a class called book is defined which initializes the elements and required attributes which defines the method book to take the name of the author of the book, name of the book and the year public class Book { [XmlElementAttribute("AuthorName")] public string authorname; [XmlAttributeAttribute("BookName")] public string bookname; [XmlAttributeAttribute("YearofPublishing")] public int year; public Book() { } public Book(string authorname, string bookname, int year) { this.authorname = authorname; this.bookname = bookname; this.year = year; } }
输出:
在上面的程序中,定义了一个名为check的类。然后调用 main 方法,在该方法中创建 XmlSerializer 实例,该实例用于将书籍的详细信息编码为 XML。然后定义一个名为 book 的类,它初始化定义方法 book 的元素和所需属性,以获取书籍作者的姓名、书名和年份。输出如上面的快照所示。
C# 程序演示 XmlSerializer 将给定的学生详细信息编码为 XML。
代码:
using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.Xml; using System.Xml.Serialization; using System.IO; //a class called check is defined public class check { //main method is called within which the instance of XmlSerializer is created which is used to encode the details of the book into XML public static void Main() { XmlSerializer ser_name = new XmlSerializer(typeof(Student)); Student studentdetails = new Student("Shobha Shivakumar", "C Sharp", "XML"); ser_name.Serialize(Console.Out, studentdetails); Console.ReadLine(); } } //a class called student is defined which initializes the elements and required attributes which defines the method student to take the name of the student, name of the student and name of the topic public class Student { [XmlElementAttribute("StudentName")] public string studentname; [XmlAttributeAttribute("SubjectName")] public string subjectname; [XmlAttributeAttribute("TopicName")] public string topicname; public Student() { } public Student(string studentname, string subjectname, string topicname) { this.studentname = studentname; this.subjectname = subjectname; this.topicname = topicname; } }
输出:
在上面的程序中,定义了一个名为check的类。然后调用 main 方法,在该方法中创建 XmlSerializer 实例,该实例用于将学生的详细信息编码为 XML。然后定义一个名为 Student 的类,该类初始化元素和所需属性,这些元素和属性定义了 Student 方法,以获取学生姓名、科目名称和主题名称。输出如上面的快照所示。
C# 程序演示 XmlSerializer 将给定员工详细信息编码为 XML。
代码:
using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.Xml; using System.Xml.Serialization; using System.IO; //a class called check is defined public class check { //main method is called within which the instance of XmlSerializer is created which is used to encode the details of the book into XML public static void Main() { XmlSerializer ser_name = new XmlSerializer(typeof(Employee)); Employee employeedetails = new Employee("Shobha Shivakumar", "Engineer", 123); ser_name.Serialize(Console.Out, employeedetails); Console.ReadLine(); } } //a class called employee is defined which initializes the elements and required attributes which define the method employee to take the name of the employee, the designation of the employee and the employee ID of the employee public class Employee { [XmlElementAttribute("EmployeeName")] public string Employeename; [XmlAttributeAttribute("Designation")] public string Designation; [XmlAttributeAttribute("EmployeeID")] public int EmployeeID; public Employee() { } public Employee(string Employeename, string Designation, int EmployeeID) { this.Employeename = Employeename; this.Designation = Designation; this.EmployeeID = EmployeeID; } }
输出:
在上面的程序中,定义了一个名为check的类。然后调用 main 方法,在该方法中创建 XmlSerializer 实例,该实例用于将员工的详细信息编码为 XML。然后定义一个名为“employee”的类,该类初始化元素和所需属性,这些元素和所需属性定义了方法“employee”以获取雇员的姓名、雇员的名称和雇员的雇员 ID。输出如上面的快照所示。
在本教程中,我们通过定义了解 C# 中 XmlSerializer 的概念、XmlSerializer 的语法,以及通过编程示例及其输出了解 C# 中 XmlSerializer 的工作原理。
以上是C# XmlSerializer的详细内容。更多信息请关注PHP中文网其他相关文章!