Pregunta

Im desarrollando una aplicación multi-hilo usando el código Smith Plantilla Nhibernate, leí que debo usar una sesión o cada hilo, el problema es que no sé cómo conseguir una nueva sesión de clases CodeSmith generados ...

cualquier organismo puede proporcionar un ejemplo muy sencillo de cómo utilizar CodeSmith Nhibernate en unos 2 hilos diferentes? o por lo menos me privide de código para crear nueva sesión?

gracias de antemano.

¿Fue útil?

Solución

Los objetos del gestor CodeSmith generados ya están hilo de seguridad, y asegurarse de que cada hilo tendrá su propio objeto de sesión de NHibernate. Para garantizar que los hilos quedan abiertas y cerradas correctamente, es muy importante que siempre disponer de los gerentes. He aquí un ejemplo:

IManagerFactory managerFactory = new ManagerFactory();
using (ICategoryManager categoryManager = managerFactory.GetCategoryManager())
{
    Category categoryA = new Category();
    categoryA.Id = "TEST1";
    categoryA.Name = "Test 1";
    categoryA.Descn = "Hello world!";

    categoryManager.Save(categoryA);
    categoryManager.Session.CommitChanges();
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top