public virtual string GetMigrationId(string migrationName) { DebugCheck.NotEmpty(migrationName); if (!Exists()) { return(null); } using (var connection = CreateConnection()) { using (var context = CreateContext(connection)) { var migrationIds = CreateHistoryQuery(context) .Select(h => h.MigrationId) .Where(m => m.Substring(16) == migrationName) .ToList(); if (!migrationIds.Any()) { return(null); } if (migrationIds.Count() == 1) { return(migrationIds.Single()); } throw Error.AmbiguousMigrationName(migrationName); } } }
public virtual string GetMigrationId(string migrationName) { if (!this.Exists((string)null)) { return((string)null); } DbConnection connection = (DbConnection)null; try { connection = this.CreateConnection(); using (HistoryContext context = this.CreateContext(connection, (string)null)) { List <string> list = this.CreateHistoryQuery(context, (string)null).Select <HistoryRow, string>((Expression <Func <HistoryRow, string> >)(h => h.MigrationId)).Where <string>((Expression <Func <string, bool> >)(m => m.Substring(16) == migrationName)).ToList <string>(); if (!list.Any <string>()) { return((string)null); } if (list.Count <string>() == 1) { return(list.Single <string>()); } throw Error.AmbiguousMigrationName((object)migrationName); } } finally { this.DisposeConnection(connection); } }