Objects Store for .Net
A small persistence framework for. Net very simple, but it works well.
In the current data are saved in an XML file in SOAP format, or in a file in JSON format.

Un petit Framework de persistance pour .Net ultra simple, mais il marche bien.
Dans la version actuelle les données sont sauvegardés dans un fichier XML au format SOAP, ou dans un fichiers au format JSON.La sérialisation JSON est fournit par le projet JSON.net http://json.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=37810. Cette sérialisation est super efficace !!! Le fichier JSON est 30 fois moins gros que le même fichier en SOAP-XML !!!!

Mon blog : http://fberton.blogspot.com

Objects Store for. Net (AUTOMATIC TRANSLATION)
A small persistence framework for. Net very simple, but it works well.
In the current data are saved in an XML file in SOAP format, or in a file in JSON format.

The JSON serialization is provided by the project JSON.net http://json.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=37810. This serialization is super effective! The JSON file is 30 times smaller than the same file in XML-SOAP!!

Le modéle objet
objectsStore.jpg

Exemple d'utilisation
Voici un exemple simple avec une classe PersonnesRecord qui représente la donnée que l'on souhaite faire persister; et la classe PersonneSet qui représente un ensemble de PersonnesRecord qui peuvent être sauvegardé.

[DataContract]
public class PersonneRecord : RecordBase<PersonneRecord>
{
[DataMember]
public string Nom {get;set;}
[DataMember]
public string Prenom { get; set; }
}
}

public class PersonneSet : RecordSetBase<PersonneRecord>
{
public PersonneSet()
{
// Ici je met en place le provider de persistance par IOC
RecordSetBase<PersonneRecord>.RecordSetProvider = SOAPRecordSetProvider<PersonneRecord>.CreateRecordSetProvider();
}
}

Voici un exemple d'utilisation de ces classes.

PersonneSet MesContacts = new PersonneSet();

PersonneRecord contact = MesContacts.CreateRecord();
contact.Nom = "DUPOND";
contact.Prenom = "Fred";

PersonneRecord contact = MesContacts.CreateRecord();
contact.Nom = "EFFACEUR";
contact.Prenom = "Léon";

MesContacts.Save(@"c:\temp\test.soap.xml");

MesContacts = null;
MesContacts = new PersonneSet();
MesContacts.Load(@"c:\temp\test.soap.xml");
int iNbRecords = MesContacts.Records.Count; // =2
MesContacts.DeleteRecord(MesContacts.Records[0].oid);
iNbRecords = MesContacts.Records.Count; // =1

Last edited Jan 18, 2010 at 10:06 AM by berton, version 13