none
serialisation RRS feed

Réponses

  • Salut sousou_me!

    Tu dois surement savoir qu'il existe deux type de sérialisation sous le .Net: la sérialisation par valeur et par référence. Si cela n'est pas trop de littérature, rappelons les concepts.

    La sérialisation intervient dans le cadre d'une communication entre domaines d'application que ce soit en local ou à distance.

    Dans le cas d'une sérialisation par valeur(classe implémentant ISerializable ou marquée par l'attribut SerializableAttribute), les instances des classes sont entièrement copiées sous certaines réserves, ainsi que tous leurs objets dépendants, vers le domaine de destination.

    En ce qui concerne la sérialisation par référence (classe héritant de la classe MarshalByRefObject), l'instance est encodée en un object ObjRef qui est transmis au domaine de destination où il est utilsé pour la création d'un proxy à travers lequel l'objet source (qui reste dans son domaine) est référencé.

    Les classes dans System.Windows.Forms héritent généralement de l'objet Control qui lui-même hérite de Component qui a son tour hérite de MarshalByRefObject! Ouf! Ils sont donc pour la plupart sérialisables par référence!

    Cordialement.

     

    • Proposé comme réponse ppc2610 vendredi 26 mars 2010 07:40
    • Marqué comme réponse Alex Petrescu vendredi 26 mars 2010 15:46
    vendredi 26 mars 2010 07:39

Toutes les réponses

  • Salut sousou_me!

    Tu dois surement savoir qu'il existe deux type de sérialisation sous le .Net: la sérialisation par valeur et par référence. Si cela n'est pas trop de littérature, rappelons les concepts.

    La sérialisation intervient dans le cadre d'une communication entre domaines d'application que ce soit en local ou à distance.

    Dans le cas d'une sérialisation par valeur(classe implémentant ISerializable ou marquée par l'attribut SerializableAttribute), les instances des classes sont entièrement copiées sous certaines réserves, ainsi que tous leurs objets dépendants, vers le domaine de destination.

    En ce qui concerne la sérialisation par référence (classe héritant de la classe MarshalByRefObject), l'instance est encodée en un object ObjRef qui est transmis au domaine de destination où il est utilsé pour la création d'un proxy à travers lequel l'objet source (qui reste dans son domaine) est référencé.

    Les classes dans System.Windows.Forms héritent généralement de l'objet Control qui lui-même hérite de Component qui a son tour hérite de MarshalByRefObject! Ouf! Ils sont donc pour la plupart sérialisables par référence!

    Cordialement.

     

    • Proposé comme réponse ppc2610 vendredi 26 mars 2010 07:40
    • Marqué comme réponse Alex Petrescu vendredi 26 mars 2010 15:46
    vendredi 26 mars 2010 07:39
  • Bonjour,

     

    Merci ppc2610 pour une telle réponse complète !

     

    Cordialement,

    Alex


    Alex Petrescu - MSFT
    vendredi 26 mars 2010 15:46