我知道这是一个重复的帖子,但我的上下文不同。我从这里解决了这个问题。我的一些变化如下:
private static Mutex _sessionMutex = new Mutex();
public void OpenMySessionFactory(string conStr)
{
try
{
_sessionMutex.WaitOne();
config = Fluently.Configure()
.Database(MySQLConfiguration.Standard.ConnectionString(conStr))
.Mappings(m => m.FluentMappings.AddFromAssembly(System.Reflection.Assembly.GetExecutingAssembly()))
.BuildConfiguration();
sessionFactory = config.BuildSessionFactory();
_sessionMutex.ReleaseMutex();
}
catch (Exception)
{
throw;
}
}
如果我按照上述方式实施,会有什么影响吗?
错误背后的原因:
已添加具有相同密钥的项目
当我双击任何必须使用 Fluent NHibernate 进行数据访问的按钮时,就会发生这种情况。