Sérialisation Xml : Sérialiser une HybridDictionary ou Hashtable ???

Résolu
EmacLi Messages postés 165 Date d'inscription jeudi 3 novembre 2005 Statut Membre Dernière intervention 1 février 2013 - 13 mars 2007 à 14:44
EmacLi Messages postés 165 Date d'inscription jeudi 3 novembre 2005 Statut Membre Dernière intervention 1 février 2013 - 14 mars 2007 à 09:59
Boujour à tous,

Quelqu'un pourrait il m'aider ?

Je cherche à sérialiser une hashtable ou une hybriddictionnary !

Je cherche, je cherche, sans succés !

Merci à tous !

(VS2005 fr, framework 2.0)
A voir également:

6 réponses

cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
13 mars 2007 à 23:27
Hé non...
L'attribut Serializable ne veut pas dire que l'object est serializable avec un XmlSerializer, ça veut dire qu'il est serializable avec un BinaryFormatter (ou SoapFormatter).
Si tu n'es pas trop à l'aise avec les Attributes, tu peux rapidement jeter un coup d'oeil ici

<hr />
-Blog-
3
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
13 mars 2007 à 16:37
Salut,
Regardes sur le site, il y a différentes sources qui pourront t'être utile... Par exemple, celle-ci

<hr />
-Blog-
0
EmacLi Messages postés 165 Date d'inscription jeudi 3 novembre 2005 Statut Membre Dernière intervention 1 février 2013 1
13 mars 2007 à 16:58
Merci mais ce n'est pas tout à fait ce que je cherche.

J'ai une classe que je sérialise pour obtenir une instance :

public class LienWeb


   private string sLibelle;
   private string sUrl;
   private HybridDictionary hd = new HybridDictionary(); 

   [XmlAttributeAttribute("libelle")]
   public string Libelle
   {
      get { return sLibelle; }
      set { sLibelle = value; }
   } 

   [XmlAttributeAttribute("url")]
   public string Url
   {
      get { return sUrl; }
      set { sUrl = value; }
   } 

   [???]
   public HybridDictionary Parametres
   {
      get { return hd; } 
      set { hd = value; } 
   }
}

Le problème c'est que ma  HybridDictionary (qui m'interesse) ne se sérialise pas.

Voici ma méthode :

public void Enregistre(LienWeb lien)
{
   XmlSerializer serializer = new XmlSerializer(typeof(LienWeb)); 

   using (TextWriter writer = new StreamWriter("C:\test.xml")) 
      serializer.Serialize(writer, lien); 
}
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
13 mars 2007 à 17:44
Le problème justement c'est qu'un Dictionary ne peut pas être serializé.
Cherches sur le site, y'a des sources qui expliquent comment contourner le problème...

<hr />
-Blog-
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
EmacLi Messages postés 165 Date d'inscription jeudi 3 novembre 2005 Statut Membre Dernière intervention 1 février 2013 1
13 mars 2007 à 19:24
0
EmacLi Messages postés 165 Date d'inscription jeudi 3 novembre 2005 Statut Membre Dernière intervention 1 février 2013 1
14 mars 2007 à 09:59
oki merci, j'viens de regarder tout ça.
0
Rejoignez-nous