Tukar rentetan XML yang diterima oleh soket kepada objek C#
Dalam persekitaran rangkaian, adalah perkara biasa untuk menerima rentetan XML melalui soket. Untuk menggunakan mesej XML ini dengan berkesan, ia perlu ditukar kepada objek C#.
Sampel mesej XML yang disediakan mengikut struktur tertentu:
<msg><id>1</id><action>stop</action></msg>
Untuk menukar rentetan XML sedemikian kepada objek C#, ikut langkah berikut:
Buat fail XSD: Pasang Windows SDK dan gunakan alat xsd.exe untuk menukar sampel XML kepada fail skema XSD. Jalankan arahan berikut:
xsd yourfile.xml
Jana kelas C#: Gunakan xsd.exe sekali lagi untuk menukar fail XSD kepada kelas C#. Jalankan arahan ini:
xsd yourfile.xsd /c
Ini akan menjana fail kelas C# (contohnya, yourfile.cs).
Menyahsiri rentetan XML: Untuk menyahsiri rentetan XML menjadi objek C#, buat tika XmlSerializer dan gunakannya untuk menyahsiri rentetan input. Berikut ialah contoh:
XmlSerializer serializer = new XmlSerializer(typeof(msg)); msg resultingMessage = (msg)serializer.Deserialize(new XmlTextReader("yourfile.xml"));
Sebagai alternatif, anda boleh menyahsiri daripada aliran memori:
XmlSerializer serializer = new XmlSerializer(typeof(msg)); MemoryStream memStream = new MemoryStream(Encoding.UTF8.GetBytes(inputString)); msg resultingMessage = (msg)serializer.Deserialize(memStream);
Atau gunakan StringReader:
XmlSerializer serializer = new XmlSerializer(typeof(msg)); StringReader rdr = new StringReader(inputString); msg resultingMessage = (msg)serializer.Deserialize(rdr);
Proses ini membolehkan anda menukar rentetan XML yang diterima melalui soket ke objek C# dengan cekap untuk pemprosesan dan manipulasi selanjutnya dalam aplikasi anda.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menukar Rentetan XML yang Diterima Melalui Soket ke Objek C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!