/// <summary> /// Adds the column. /// </summary> /// <param name="databaseColumn">The database column.</param> /// <param name="columnName">Name of the column.</param> /// <param name="dbType"><see cref="DbType"/>.</param> /// <param name="columnInitialization">The column initialization.</param> /// <returns></returns> public static DatabaseColumn AddColumn(this DatabaseColumn databaseColumn, string columnName, DbType dbType, Action <DatabaseColumn> columnInitialization) { if (databaseColumn == null) { throw new ArgumentNullException("databaseColumn", "databaseColumn must not be null"); } var dataType = DataTypeMappingFactory.DataTypeMapper(databaseColumn.Table).Map(dbType); return(databaseColumn.AddColumn(columnName, dataType, columnInitialization)); }
/// <summary> /// Adds the column. /// </summary> /// <param name="databaseColumn">The database column.</param> /// <param name="columnName">Name of the column.</param> /// <param name="netType">A CLR type (will attempt to translate to database type)</param> /// <returns></returns> /// <exception cref="ArgumentException">Cannot map the CLR type to a database type</exception> public static DatabaseColumn AddColumn(this DatabaseColumn databaseColumn, string columnName, Type netType) { if (databaseColumn == null) { throw new ArgumentNullException("databaseColumn", "databaseColumn must not be null"); } var dataType = TypeToString(databaseColumn.Table, netType); if (string.IsNullOrEmpty(dataType)) { throw new ArgumentException("Cannot map .net type to a database type", "netType"); } return(databaseColumn.AddColumn(columnName, dataType)); }