Désérialisation XML De l'Objet à l'aide de Dynamic
Est-il possible de Désérialiser inconnu XML de l'objet, comme ci-dessous?
var xml = @"<Students><Student><Name>Arul</Name><Mark>90</Mark></Student></Students>";
var serializer = new XmlSerializer(typeof(DynamicObject));
dynamic students = serializer.Deserialize(new XmlTextReader(new StringReader(xml)));
- Pourquoi ne pas essayer?
- j'ai essayé de le lancer exception, mais même logique de travail pour Json pourquoi ses pas l'appui de xml
- Double Possible de la Conversion de XML à une dynamique de l'objet C#
Vous devez vous connecter pour publier un commentaire.
Vous pouvez essayer cette.
--EDIT--
À le faire fonctionner avec des espaces de noms xml, j'ai ajouté RemoveNamespaces méthode.
person.name
.if (binder.Name == "Value") result = _root.Value;
avant la finalereturn true
dans leDynamicXml.cs
fichier. Dans un exemple de XML comme<MatchTypes><MatchType>1</MatchType><MatchType>2</MatchType></MatchTypes>
, j'ai été incapable d'obtenir la Valeur de chaque MatchType. C'était, bien sûr, nichée à quelques niveaux dans le XML, alors peut-être qui avait quelque chose à faire avec elle. Merci pour votre belle présentation!<Student Name="Ivan" />
. J'ai fixé ce changement de 39DynamicXml
ligne de classe à ceresult = node.HasElements || node.HasAttributes ? (object)new DynamicXml(node) : node.Value;