Saya ingin mengubah kode saya dari:
string path = @"c:\Directory\test.xml";
XmlSerializer s = new XmlSerializer(typeof(Car));
TextReader r = new StreamReader(path);
Car car = (Car)s.Deserialize(r);
r.Close();
ke dalam kode yang akan mengkonversi XML ke string, dan kemudian mengkonversi string ke objek Mobil.
Apakah ini mungkin?
c#
xml
serialization
pengguna278618
sumber
sumber
public static T XmlDeserializeFromString<T>(this string objectData) { return (T)XmlDeserializeFromString(objectData, typeof(T)); }
Saya akan mengedit posting utama.StringReader
adalah bagian yang hilang. Terima kasih.Jika Anda menyimpan XML di dalam variabel string, Anda bisa menggunakan StringReader :
sumber
1-liner, mengambil string XML
text
danYourType
sebagai tipe objek yang diharapkan. tidak jauh berbeda dengan jawaban lain, cukup dikompres menjadi 1 baris:sumber
sumber
Tanpa malu-malu disalin dari deserialization Generik dari string xml
sumber