我有一个应用程序,我使用Fluent Nhibernate来创建我的数据库。到目前为止,我一直在重新创建数据库模式。代码是这样的:Fluent NHibernate - 只在不存在的情况下创建数据库架构
public NhibernateSessionFactory(IPersistenceConfigurer config)
{
_sessionFactory = Fluently.Configure().
Database(config).
Mappings(m => m.FluentMappings.AddFromAssemblyOf<MappingsPersistenceModel>()).
ExposeConfiguration(BuildSchema).
BuildSessionFactory();
}
private static void BuildSchema(Configuration config)
{
// if (DbExists(config))
// return;
new SchemaExport(config).Create(false, true);
}
请注意“if (DbExists(config))
”。这是我想要做的。我只想创建模式,只要它实际上不存在。在下一步中 - 如果它不是最新的,我想更新 。
我该如何做到这一点?我期待config.DatabaseExists()
,但我看不到这样的事情。我发现了一些解决方案的可能性,但处理这个问题的典型推荐方法是什么?
太棒了!这正是我所期待的。谢谢! – stiank81 2011-05-05 06:51:27
完美!谢谢 – Bronek 2014-06-12 18:54:44