IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Sérialisation XML d'une famille de classes


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 44
    Par défaut Sérialisation XML d'une famille de classes
    Bonjour,

    J'aimerais sérialiser dans un fichier XML une liste d'objets, mais qui peuvent être des instances de différentes classes filles.

    Par exemple :
    J'ai une classe mère abstraite Requete. J'ai deux classes filles RequeteSQL et RequeteGA.
    Je voudrais pouvoir sérialiser List<Requete> et que le fait de savoir ce qu'on sérialise/désérialise soit automatique.

    Pour l'instant j'ai ce code là pour la propriété pRequetesList qui représente ma liste.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    [XmlArray(ElementName = "RequetesList")]
    [XmlArrayItem(ElementName = "Requete")]
    public List<Requete> pRequetesList
    {
         get { return mobjRequetesList; }
         set { mobjRequetesList = value; }
    }
    Lorsque je veux sérialiser, j'obtiens une erreur "There was an error generating the XML document.".

    Quelqu'un a une idée ?

    Par avance merci,

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 44
    Par défaut
    En enlevant les [Xml ...] ça fonctionne.
    Désolé de pas avoir cherché comme un grand et avoir posté pour rien.

    Bonne journée !

    (On sait jamais ce post servira peut-être un jour à quelqu'un...)

  3. #3
    Membre émérite
    Inscrit en
    Octobre 2006
    Messages
    587
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Octobre 2006
    Messages : 587
    Par défaut
    Il faut que ta classe Requete soit marqué de l'attribut [Serializable].

    Il faut également un attribut XMLinclude appliqué à la classe que tu veux sérialiser.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 44
    Par défaut
    Oui j'avais trouvé entre temps.
    Merci beaucoup en tout cas.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 30/03/2014, 15h33
  2. Restreindre paramètre template à une famille de classes
    Par kidpaddle2 dans le forum Langage
    Réponses: 16
    Dernier message: 30/06/2010, 17h18
  3. Sérialisation XML d'une ArrayList
    Par Contrec dans le forum C#
    Réponses: 6
    Dernier message: 29/11/2008, 09h57
  4. Problème de sérialisation XML d'une Array
    Par Abakai dans le forum C#
    Réponses: 3
    Dernier message: 21/05/2007, 15h30
  5. Exporter une instance de classe au format XML ou XMI
    Par Scorpion Rouge dans le forum Persistance des données
    Réponses: 2
    Dernier message: 22/12/2005, 11h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo