Je sais que pour les écritures multi-parties, je devrais utiliser des transactions dans nhibernate. Mais qu'en est-il de la simple lecture et écrit (1 partie) ... J'ai lu que c'est une bonne pratique de toujours utiliser les transactions. Est-ce nécessaire?Devrais-je toujours utiliser des transactions dans nhibernate (même pour de simples lectures et écritures)?
Dois-je faire ce qui suit pour une lecture simple? ou puis-je simplement laisser tomber la partie de la transcription tout le monde?
public PrinterJob RetrievePrinterJobById(Guid id)
{
using (ISession session = sessionFactory.OpenSession())
{
using (ITransaction transaction = session.BeginTransaction())
{
var printerJob2 = (PrinterJob) session.Get(typeof (PrinterJob), id);
transaction.Commit();
return printerJob2;
}
}
}
ou
public PrinterJob RetrievePrinterJobById(Guid id)
{
using (ISession session = sessionFactory.OpenSession())
{
return (PrinterJob) session.Get(typeof (PrinterJob), id);
}
}
Qu'en est-il pour les écritures simples?
public void AddPrintJob(PrinterJob printerJob)
{
using (ISession session = sessionFactory.OpenSession())
{
using (ITransaction transaction = session.BeginTransaction())
{
session.Save(printerJob);
transaction.Commit();
}
}
}
Bonne réponse sur SO: http://stackoverflow.com/questions/1657465/nhibernate-transactions-on-reads –