Die Objekte, die in XML codiert werden, können mithilfe von XmlSerializer gesteuert werden, der aus zahlreichen Konstruktoren besteht. Immer wenn ein Serializer erstellt wird und der verwendete Konstruktor keinen Typ annimmt, wird jeweils eine temporäre Assembly erstellt Zeit. Der Serializer wird erstellt, der die Serialisierung und Deserialisierung von Objekten in XML-Dokumente und aus XML-Dokumenten ermöglicht. Die Mitglieder von XmlSerialiizer sind XmlSerializer, XmlSerializer(Type), XmlSerializer(XmlTypeMapping), XmlSerializer(Type, String), XmlSerializer(Type , Type()), XmlSerializer(Type, XmlAttributeOverrides), XmlSerializer(Type, XmlRootAttribute), XmlSerializer(Type, XmlAttributeOverrides, Type(), XmlRootAttribute, String), ), XmlAttributeOverrides, Type(), XmlRootAttribute, String, String, Evidence). In diesem Thema lernen wir etwas über C# XmlSerializer.
Die Syntax:
XmlSerializer serializer_name = new XmlSerializer(type);
wobei serializer_name der Objektname des XmlSerializer ist
Beispiel #1
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; } }
Ausgabe:
Im obigen Programm ist eine Klasse namens check definiert. Anschließend wird die Hauptmethode aufgerufen, in der die Instanz von XmlSerializer erstellt wird, die zum Codieren der Buchdetails in XML verwendet wird. Dann wird eine Klasse namens „book“ definiert, die die Elemente und erforderlichen Attribute initialisiert, die die Methode „book“ definiert haben, um den Namen des Autors des Buches, den Namen des Buches und das Jahr anzunehmen. Die Ausgabe ist im Schnappschuss oben dargestellt.
Beispiel #2
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; } }
Ausgabe:
Im obigen Programm ist eine Klasse namens check definiert. Anschließend wird die Hauptmethode aufgerufen, in der die Instanz von XmlSerializer erstellt wird, die zum Codieren der Daten des Schülers in XML verwendet wird. Dann wird eine Klasse namens „student“ definiert, die die Elemente und erforderlichen Attribute initialisiert, die die Methode „student“ definiert haben, um den Namen des Studenten, den Namen des Fachs und den Namen des Themas zu übernehmen. Die Ausgabe ist im Schnappschuss oben dargestellt.
Beispiel #3
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; } }
Ausgabe:
Im obigen Programm ist eine Klasse namens check definiert. Anschließend wird die Hauptmethode aufgerufen, in der die Instanz von XmlSerializer erstellt wird, die zum Codieren der Mitarbeiterdaten in XML verwendet wird. Anschließend wird eine Klasse mit dem Namen „Mitarbeiter“ definiert, die die Elemente und erforderlichen Attribute initialisiert, die die Methode „Mitarbeiter“ definiert haben, um den Namen des Mitarbeiters, die Bezeichnung des Mitarbeiters und die Mitarbeiter-ID des Mitarbeiters zu übernehmen. Die Ausgabe ist im Schnappschuss oben dargestellt.
Fazit
Das obige ist der detaillierte Inhalt vonC# XmlSerializer. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!