public IEnumerable <ColumnDefinition> GenerateColumnDefinitions(Table table, QuoteType quoteType = QuoteType.NotQuoted) { List <ColumnDefinition> columns = new List <ColumnDefinition>(); foreach (var column in table.Columns) { SqlDataType sqlDataType = SqlDataType.Parse(column.DataType); DataTypeReference dataType = GenerateDataTypeReference(sqlDataType); if (column.IsIdentity) { ColumnDefinition columnDef = ScriptFactory.IdentityColumn(column.Name, dataType, CreateIdentityOptions(column), quoteType); columns.Add(columnDef); } else if (column.RowGuid) { if (!string.IsNullOrEmpty(column.DefaultValue)) { ColumnDefinition rowGuidCol = ScriptFactory.ColumnDefinition(column.Name, column.DefaultValue, column.DefaultName, dataType, column.AllowNulls, column.RowGuid, quoteType); columns.Add(rowGuidCol); } } else { columns.Add(ScriptFactory.ColumnDefinition(column.Name, dataType, column.AllowNulls, quoteType)); } } return(columns); }