Je veux changer mon code de:
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();
en code qui convertirait un XML en chaîne, puis convertirait la chaîne en objet Car.
Est-ce possible?
c#
xml
serialization
user278618
la source
la source
public static T XmlDeserializeFromString<T>(this string objectData) { return (T)XmlDeserializeFromString(objectData, typeof(T)); }
Je vais éditer le message principal.StringReader
est la pièce manquante. Merci.Si vous avez le XML stocké dans une variable de chaîne, vous pouvez utiliser un StringReader :
la source
1-ligne, prend une chaîne XML
text
etYourType
comme type d'objet attendu. pas très différent des autres réponses, juste compressé à 1 ligne:la source
la source
Copié sans vergogne à partir de la désérialisation générique d'une chaîne xml
la source