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
완벽! 감사 – Bronek