Introduction à NHibernate

Exemple

Création d'un objet et enregistrement en base de données

//Création de l'objet parking
Parking park = new Parking("¨Parking IR3");

//Récupération de la session
Configuration conf = new Configuration();
ISessionFactory sessionFactory = conf.Configure("App.config").AddAssembly("Test").BuildSessionFactory();
ISession session = sessionFactory.OpenSession();

//Ouverture de la transaction
ITransaction tx = session.BeginTransaction();

//Sauvegarde de l'objet en base de données
session.Save(park);

//Commit de la transaction
tx.Commit();
			

Récupération d'un enregistrement de la base de données

//UTILISATION DE LA METHODE LOAD (SANS HQL) AVEC L'ID EN PARAMETRE
Parking park = (Parking) sess.Load(typeof(Paking), id);

//UTILISATION DE LA METHODE AVEC HQL
IList list = session.CreateQuery("from Parking").List();
foreach (Parking p in list)
{
    Console.WriteLine(p.Id + " - " + p.Name); //Cela affiche "1 - Parking IR3"
}
			

Suppression d'un enregistrement de la base de données

//Aprés avoir récupérer l'objet de la base de données
Parking park = ...;
session.Delete(park);