public MigrationGenerator(NHibernate.Cfg.Configuration configuration, Encoding encoding) { this.Encoding = encoding; Configuration = configuration; Configuration.BuildMappings(); // necessary to complete columns creation (foreign keys...) var mapping = Configuration.CreateMappings(new GenericDialect()); // extract the tables scheme CurrentScheme = new MigrationScheme(mapping.IterateTables.Select(t => new MigrationTable(t))); UpdateForeignKeys(); PreviousSnapshotFileName = string.Format("{0}\\previous.snapshot",Directory.GetCurrentDirectory()); }