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

Framework .NET Discussion :

Sérialisation XML et membre privé


Sujet :

Framework .NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    849
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 849
    Par défaut Sérialisation XML et membre privé
    Bonjour
    J'ai une classe que je souhaite sérialisé.
    Or j'ai des propriétés privés que je souhaite sérialiser. Or pour le sérialiser je dois le rendre public. Mais je n'ai pas envie que d'autres classes y ai accès (d'où le privé).

    Comment faire ? Suis-je obligé de le rendre public ?

    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    public int Score { get; private set; }

    Merci

  2. #2
    Membre Expert Avatar de meziantou
    Homme Profil pro
    autre
    Inscrit en
    Avril 2010
    Messages
    1 223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : autre
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2010
    Messages : 1 223
    Par défaut
    Tu peux implémenter l'interface IXmlSerializable
    http://msdn.microsoft.com/fr-fr/libr...ializable.aspx

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    849
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 849
    Par défaut
    Ca ne résoud pas mon problème d'accès à ma propriété qui est privé.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 69
    Par défaut
    Avec l'interface IXmlSerializable c'est toi qui va serializé et désérializé l'objet donc tu peu y ajouter tes champs privé.

  5. #5
    Membre Expert Avatar de meziantou
    Homme Profil pro
    autre
    Inscrit en
    Avril 2010
    Messages
    1 223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : autre
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2010
    Messages : 1 223

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 8
    Par défaut
    La solution proposée par Meziantou fonctionne effectivement.

    Par contre, une autre solution est d'avoir la business class souhaitée avec l'accessibilité souhaitée sur ses properties et d'avoir un objet "XML" avec toutes ses properties public pour la sérialisation/désérialisation
    En résumé: bien séparer les classes par rapport à leur utilisation

  7. #7
    Membre Expert
    Avatar de GuruuMeditation
    Homme Profil pro
    .Net Architect
    Inscrit en
    Octobre 2010
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : .Net Architect
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 705
    Par défaut
    Datacontractserializer permet de sérialiser les champs private.

  8. #8
    Membre Expert Avatar de DonQuiche
    Inscrit en
    Septembre 2010
    Messages
    2 741
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 2 741
    Par défaut
    Citation Envoyé par julplemet Voir le message
    Par contre, une autre solution est d'avoir la business class souhaitée avec l'accessibilité souhaitée sur ses properties et d'avoir un objet "XML" avec toutes ses properties public pour la sérialisation/désérialisation
    En résumé: bien séparer les classes par rapport à leur utilisation
    C'est une très judicieuse suggestion à mon humble avis et la meilleure des solutions.

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

Discussions similaires

  1. Des membres privés
    Par Gruik dans le forum C
    Réponses: 6
    Dernier message: 06/12/2006, 22h13
  2. Heritage et membre privé
    Par b Oo dans le forum C++
    Réponses: 5
    Dernier message: 27/11/2006, 22h20
  3. Problème sérialisation XML [C#]
    Par AlphonseBrown dans le forum Windows Forms
    Réponses: 4
    Dernier message: 27/04/2006, 22h58
  4. acces au membres privés
    Par le y@m's dans le forum Langage
    Réponses: 6
    Dernier message: 22/09/2005, 15h52
  5. [VB.NET] Sérialisation XML de Collections
    Par nico-pyright(c) dans le forum Windows Forms
    Réponses: 8
    Dernier message: 15/12/2004, 15h28

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