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 / déserrialization - Spécifier un attribut de classe comme optionnel


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 7
    Par défaut Sérialisation / déserrialization - Spécifier un attribut de classe comme optionnel
    Bon-jour(-soir),
    le titre est dejà pas mal explicite mais je vais essayer de détailler mon cas.

    J'ai un fichier qui contient des infos qui ont été sérializées.

    La classe contenait 3 attributs au moment de la sérialisation, j'ai rajouté un attribut à cette classe.
    Je voudrais spécifier qu'il est optionnel, actuellement je me prends un exception.

    Le but à terme est d'obtenir les 2 versions de l'appli celle dont la classe X contient 3 attributs et celle dont cette même classe contient 4 attributs, et qu'elles aient toutes les deux possibilités de lire les 2 type de fichier sérialisé.

    • Application ( 3 attributs) + fichier sérialisé (3 attributs ) => cas classique ca doit marcher sans soucis
    • Application ( 4 attributs) + fichier sérialisé (4 attributs ) => cas classique ca doit marcher sans soucis
    • Application ( 3 attributs) + fichier sérialisé (4 attributs ) =>
      - à la sérialisation : fichier généré contient 3 attributs par instance
      - à la dé-sérialisation : le nouvel attribut est ignoré
    • Application ( 4 attributs) + fichier sérialisé (3 attributs ) =>
      - à la sérialisation : fichier généré contient 4 attributs par instance
      - à la dé-sérialisation : le nouvel attribut est setté à null



    Merci d'avance, j'ai parcouru la doc msdn mais j'ai ptet raté quelquechose

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Je suppose que tu parles de sérialisation binaire ? dans ce cas, je ne suis pas sûr que ce soit possible... Tu peux essayer de jouer avec l'attribut NonSerialized, mais je pense pas que tu arrives à grand chose.

    Tu as des contraintes sur le type de sérialisation à utiliser ? Si ce n'est pas le cas, je te suggère d'utiliser plutôt la sérialisation XML, qui est beaucoup plus souple. Ca ignore automatiquement les attributs qui ne correspondent à rien dans la classe, et ça ne râle pas s'il en manque... En plus c'est facilement lisible et éditable à la main

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 7
    Par défaut
    désolé de ne pas avoir spécifié, je parlais de sérialisation XML

    ce que tu dis m'inquiète un peu car ac veut dire que mon exception qui est bien sur l'instruction Serializer.deserialize(...) ne provient pas de la différence entre la structure objet et la structure au sein de fichier

    je continuerai l'investigation demain...

    Merci pour ta réponse

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Qu'est-ce qu'elle dit l'exception que tu obtiens ?

Discussions similaires

  1. Classe comme attribut d'une classe parente
    Par tamerla dans le forum Débuter avec Java
    Réponses: 7
    Dernier message: 15/12/2014, 22h41
  2. Classe comme attribut
    Par ngui_004 dans le forum Débuter
    Réponses: 6
    Dernier message: 18/12/2011, 10h37
  3. QSqlDatabase comme attribut de classe
    Par mathiaskahn dans le forum Bases de données
    Réponses: 2
    Dernier message: 05/10/2010, 02h52
  4. Réponses: 9
    Dernier message: 02/09/2005, 15h44

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