public GeneratedDataMigrationScripts GetDataMigrationScripts() { var scripts = GeneratedCode.Split(new[] { DataMigrationScriptSplitterTag }, StringSplitOptions.RemoveEmptyEntries); int beforeTagPosition = Array.IndexOf(scripts, BeforeDataMigrationTag); if (beforeTagPosition == -1) { throw new FrameworkException($"Internal error when finding {nameof(BeforeDataMigrationTag)}."); } return(new GeneratedDataMigrationScripts { BeforeDataMigration = scripts.Take(beforeTagPosition), AfterDataMigration = scripts.Skip(beforeTagPosition + 1), }); }