/// <summary> /// Возвращает сущуствующий столбец таблицы. /// </summary> /// <param name="tableInfo">Сущуствующая таблица.</param> /// <returns></returns> private DBColumnInfo GetExistingColumn(DBTableInfo tableInfo) { if (tableInfo == null) { throw new ArgumentNullException("tableInfo"); } DBColumnInfo existingColumn = null; //если столбец является инкрементом, получаем существующий столбец с инкрементом таблицы if (this.IsIdentity && tableInfo.IdentityColumn != null) { existingColumn = tableInfo.IdentityColumn; } //в ином случаем получаем столбец по названию. else { existingColumn = tableInfo.GetColumn(this.Name); } return(existingColumn); }
/// <summary> /// Возвращает существующий столбец таблицы. /// </summary> /// <param name="columnName">Название столбца.</param> /// <param name="throwNotFoundException">При переданном значение true генерирует исключение в случае отсутствия столбца в таблице.</param> /// <returns></returns> public DBColumnInfo GetColumn(string columnName, bool throwNotFoundException) { if (string.IsNullOrEmpty(columnName)) { throw new ArgumentNullException("columnName"); } //получаем столбец string columnNameLow = columnName.ToLower(); DBColumnInfo column = null; if (this.ColumnsByName.ContainsKey(columnNameLow)) { column = this.ColumnsByName[columnNameLow]; } if (column == null && throwNotFoundException) { throw new Exception(string.Format("Не удалось получить существующий столбец [{0}] в таблице {1}.", columnName, this.Name)); } return(column); }