XML にエンコードされているオブジェクトは、多数のコンストラクターで構成される XmlSerializer を利用することで制御できます。シリアライザーが作成され、使用されるコンストラクターが型をとらないものである場合は、毎回一時アセンブリが作成されます。時間。 XML ドキュメントへの、および XML ドキュメントからのオブジェクトのシリアル化と逆シリアル化を可能にするシリアライザーが作成されます。XmlSerializer のメンバーは、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)。このトピックでは、C# XmlSerializer について学習します。
構文:
XmlSerializer serializer_name = new XmlSerializer(type);
serializer_name は XmlSerializer のオブジェクト名です
次に挙げる例は次のとおりです。
指定された書籍の詳細を XML にエンコードする XmlSerializer をデモする C# プログラム。
コード:
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 メソッドが呼び出され、その中で本の詳細を XML にエンコードするために使用される XmlSerializer のインスタンスが作成されます。次に、book というクラスが定義され、本の著者の名前、本の名前、年を取得するメソッド book を定義した要素と必須属性が初期化されます。出力は上のスナップショットに示されています。
指定された生徒の詳細を XML にエンコードする XmlSerializer をデモする C# プログラム。
コード:
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 メソッドが呼び出され、その中で生徒の詳細を XML にエンコードするために使用される XmlSerializer のインスタンスが作成されます。次に、student というクラスが定義され、このクラスは、学生の名前、主題の名前、およびトピックの名前を取得するメソッド Student を定義した要素と必須属性を初期化します。出力は上のスナップショットに示されています。
指定された従業員の詳細を XML にエンコードする XmlSerializer をデモする C# プログラム。
コード:
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 メソッドが呼び出され、その中で従業員の詳細を XML にエンコードするために使用される XmlSerializer のインスタンスが作成されます。次に、employee というクラスが定義され、従業員の名前、従業員の指定、および従業員の従業員 ID を取得するメソッドemployee を定義した要素と必須属性を初期化します。出力は上のスナップショットに示されています。
このチュートリアルでは、定義を通じて C# の XmlSerializer の概念、XmlSerializer の構文、プログラミング例とその出力を通じて C# での XmlSerializer の動作を理解します。
以上がC# XmlSerializerの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。