Serialisation entre plusieurs applications

[Résolu]
Signaler
Messages postés
33
Date d'inscription
vendredi 28 février 2003
Statut
Membre
Dernière intervention
26 février 2008
-
Messages postés
108
Date d'inscription
vendredi 11 juillet 2003
Statut
Membre
Dernière intervention
27 novembre 2007
-
Bonjour,

Voilà mon problème :

je sauvegarde des données dans une application avec
IFormatter formatter =
new BinaryFormatter();

tout ce pass bien, je peut lire ces données à partir de cette application. Le problème est que je souhaite pouvoir lire ces données à partir d'une autre appli et là c'est le drame !! La deserialisation se rend compte que les donées viennent d'une autre appli et impossible de lire.

Quelqu'un connait une solution (je bne souhaitye pas passer par du XML ou autre format lisible par une personne).

Merci d'avance.

1 réponse

Messages postés
108
Date d'inscription
vendredi 11 juillet 2003
Statut
Membre
Dernière intervention
27 novembre 2007

Bonjour,



Tu dois créer une classe "Binder" :

private class DeserializeBinder : SerializationBinder

{

public override Type BindToType(string assemblyName, string typeName)

{


string currentAssembly = Assembly.GetExecutingAssembly().FullName;


if (assemblyName !currentAssembly) assemblyName currentAssembly;


return Type.GetType(string.Format("{0}, {1}", typeName, assemblyName));

}

}


Ensuite tu assignes une instance de cette classe à la propriété "Binder" de ton BinaryFormatter :

formatter.Binder = new DeserializeBinder();




-- AOGie --