代码史密斯nhibrenate
-
12-10-2019 - |
题
我正在使用代码Smith NHibernate模板开发多线程应用程序,我读到我必须使用会话或每个线程,问题是我不知道如何从Codesmith生成的类中获得新的会话...
是否可以为我提供一个非常非常简单的示例,说明如何在两个不同的线程中使用代码匠Nhibernate?还是至少私下我的代码来创建新会话?
提前致谢。
解决方案
代码史密斯生成的管理器对象已经是安全的,并确保每个线程将获得其自己的NHibernate会话对象。为了确保线程被正确打开和关闭,您始终处置经理非常重要。这是一个示例:
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();
}
不隶属于 StackOverflow