namespace Migrator.Framework { public interface IMigration { string Name { get; } /// /// Represents the database. /// . /// /// Migration.Framework.ITransformationProvider ITransformationProvider Database { get; set; } /// /// Defines tranformations to port the database to the current version. /// void Up(); /// /// This is run after the Up transaction has been committed /// void AfterUp(); /// /// Defines transformations to revert things done in Up. /// void Down(); /// /// This is run after the Down transaction has been committed /// void AfterDown(); /// /// This gets called once on the first migration object. /// void InitializeOnce(string[] args); } }