The objects that are being encoded into XML can be controlled by making use of XmlSerializer which consists of numerous constructors and whenever a serializer is created and the constructor used is something which does not take a type, then a temporary assembly is created every time. The serializer is created which allows serialization and deserialization of objects into the documents of XML and from the documents of XML and the members of XmlSerialiizer are XmlSerializer, XmlSerializer(Type), XmlSerializer(XmlTypeMapping), XmlSerializer(Type, String), XmlSerializer(Type, Type()), XmlSerializer(Type, XmlAttributeOverrides), XmlSerializer(Type, XmlRootAttribute), XmlSerializer(Type, XmlAttributeOverrides, Type(), XmlRootAttribute, String), XmlSerializer(Type, XmlAttributeOverrides, Type(), XmlRootAttribute, String, String), XmlAttributeOverrides, Type(), XmlRootAttribute, String, String, Evidence). In this topic, we are going to learn about C# XmlSerializer.
The syntax:
XmlSerializer serializer_name = new XmlSerializer(type);
where serializer_name is the object name of the XmlSerializer
Here are the following examples mentioned :
C# program to demonstrate XmlSerializer to encode the given book details into XML.
Code:
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; } }
Output:
In the above program, a class called check is defined. Then the main method is called within which the instance of XmlSerializer is created which is used to encode the details of the book into XML. Then a class called book is defined which initializes the elements and required attributes that defined the method book to take the name of the author of the book, name of the book, and the year. The output is shown in the snapshot above.
C# program to demonstrate XmlSerializer to encode the given student details into XML.
Code:
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; } }
Output:
In the above program, a class called check is defined. Then the main method is called within which the instance of XmlSerializer is created which is used to encode the details of the student into XML. Then a class called student is defined which initializes the elements and required attributes that defined the method student to take the name of the student, name of the subject, and the name of the topic. The output is shown in the snapshot above.
C# program to demonstrate XmlSerializer to encode the given employee details into XML.
Code:
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; } }
Output:
In the above program, a class called check is defined. Then the main method is called within which the instance of XmlSerializer is created which is used to encode the details of the employee into XML. Then a class called employee is defined which initializes the elements and required attributes that defined the method employee to take the name of the employee, the designation of the employee, and the employee ID of the employee. The output is shown in the snapshot above.
In this tutorial, we understand the concept of XmlSerializer in C# through definition, the syntax of XmlSerializer, and the working of XmlSerializer in C# through programming examples and their outputs.
The above is the detailed content of C# XmlSerializer. For more information, please follow other related articles on the PHP Chinese website!