Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Mensirrikan Objek kepada Rentetan XML dalam C#?

Bagaimanakah Saya Boleh Mensirrikan Objek kepada Rentetan XML dalam C#?

Susan Sarandon
Susan Sarandonasal
2025-01-03 14:56:39348semak imbas

How Can I Serialize an Object to an XML String in C#?

Mensiri Objek ke Rentetan

Masalah

Kaedah sedia ada untuk mensiri objek ke fail menggunakan pensirilan Xml perlu diubah suai untuk kembali XML sebagai rentetan daripada menyimpannya ke a fail.

Penyelesaian

Untuk menyerikan objek sebagai rentetan dan bukannya menulisnya pada fail, cuma gantikan StreamWriter dengan StringWriter. Berikut ialah kaedah yang diubah suai:

public static string SerializeObject<T>(this T toSerialize)
{
    XmlSerializer xmlSerializer = new XmlSerializer(toSerialize.GetType());

    using(StringWriter textWriter = new StringWriter())
    {
        xmlSerializer.Serialize(textWriter, toSerialize);
        return textWriter.ToString();
    }
}

Pertimbangan

Adalah penting untuk menggunakan toSerialize.GetType() dan bukannya typeof(T) dalam pembina XmlSerializer. Menggunakan toSerialize.GetType() memastikan bahawa semua kemungkinan subkelas T dikendalikan dengan betul, manakala menggunakan typeof(T) boleh membawa kepada pengecualian jika jenis terbitan diluluskan sebagai hujah.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mensirrikan Objek kepada Rentetan XML dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn