コード例 #1
0
        /// <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));
        }
コード例 #2
0
        /// <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));
        }