public static string LoadIdByField(this IDBConnection connection, ColumnSpec column, string value) { List <string> ids = connection.LoadIdsByConditions( column.table, new ComparisonCondition( column, ComparisonType.EQUAL, value ), Diapasone.unlimited ); if (ids.Count > 1) { throw new CriticalException("not unique"); } else if (ids.Count == 1) { return(ids[0]); } else { throw new NotFoundInDBException(column, value); } }
public static List <string> LoadIdsByConditions(this IDBConnection connection, ITableSpec table, AbstractCondition conditions, Diapasone diapasone, params JoinSpec[] joins) { return(connection.LoadIdsByConditions(table, conditions, diapasone, joins, new SortSpec[] { new SortSpec(table.getIdSpec(), true) })); }
public static List <string> LoadIdsByConditions(this IDBConnection connection, ITableSpec table, AbstractCondition conditions, Diapasone diapasone, ColumnSpec idSpec, params SortSpec[] sorts) { return(connection.LoadIdsByConditions(table, conditions, diapasone, new JoinSpec[0], sorts, idSpec, false)); }
public static List <string> LoadIdsByConditions(this IDBConnection connection, ITableSpec table, AbstractCondition conditions, Diapasone diapasone, JoinSpec[] joins, SortSpec[] sorts) { return(connection.LoadIdsByConditions(table, conditions, diapasone, joins, sorts, table.getIdSpec(), false)); }