Pocketappconfig : conserver ses préférences

Description

Dans de nombreux cas il est inutile d'utiliser une base de donnée pour sauvegarder quelques préférences utilisateurs.
Ceci est encore plus vrai pour nos petites machines favorites. Le Compact Framework 1 n'offre pas, à ma connaissance,
de sérialisation directe des objets. Je vous propose donc une petite classe (AppConfig) qui se charge de sérialiser en
XML les propriétés ( int et string ) d'une classe qui contient vos données précieuses à sauvegarder. Un fichier du nom
de l'assembly sera créé dans le répertoire courant
Il y a 3 sources :

- AppConfig : La classe utilitaire a utiliser dans vos propres projet
- MyContact : La classe d'exemple dont on va sérialiser les propriétés
- FormMain : Le main qui fait une démonstration de son utilisation

Source / Exemple :


// Utilisation de la classe Appconfig

MyContact myContact = new MyContact();
myContact.FirstName = "Pierre";
myContact.LastName = "Dupont";
myContact.PhoneNumber = "06987625";			
myContact.ID = 1;

MyContact myContact1 = new MyContact();
myContact1.FirstName = "Martine";
myContact1.LastName = "Potier";
myContact1.PhoneNumber = "06772266";			
myContact1.ID = 2;

ArrayList alMyContact = new ArrayList();
			
alMyContact.Add(myContact);
alMyContact.Add(myContact1);
m_MyConf.SerializeObjectList(alMyContact);
m_MyConf.WriteXml();
// Lecture
alMyContact.Clear();
alMyContact = m_MyConf.DeSerializeObject(myContact.GetType());
MyContact myContact2 = alMyContact[0] as MyContact;
MyContact myContact3 = alMyContact[1] as MyContact;

MessageBox.Show(string.Format("Contact {0}\nNom : {1}\nPrénom : {2}\nTéléphone : {3}",
							myContact2.ID,
							myContact2.LastName,
							myContact2.FirstName,
							myContact2.PhoneNumber));

Conclusion :


Amélioration possibles :

gérer des types supplémentaires ( en plus de int et string )

J'ai utilisé cette classe dans certains de mes projets sur http://dodgersflasks.blogspot.com

Codes Sources

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.