private string ColumnDefinition(IColumnMetaData column) { var propertyType = column.Property.PropertyType.FullName .Replace("System.", "") .Replace(", mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089", ""); return(string.Format("{0} {1} {2}", this.DbLanguage.Quote(column.ColumnName), propertyType, this.GetNullDefinition(column)).Trim()); }
public virtual string GetNullDefinition(IColumnMetaData column) { if (column.IsNullable) { return(null); } return("NOT NULL"); }
public virtual string Create(IColumnMetaData column) { var propertyType = column.Property.PropertyType; if (ColumnTypes.ContainsKey(propertyType)) { return(ColumnTypes[propertyType](this, column)); } throw new NotSupportedException(string.Format("{0} is not supported.", propertyType)); }
public override string Int32Column(IColumnMetaData column) { var columnDefinition = this.ColumnDefinition(column, "INTEGER"); if (column.IsIdColumn) { columnDefinition += " PRIMARY KEY"; } return(columnDefinition); }
public abstract string StringColumn(IColumnMetaData column);
public abstract string Int32Column(IColumnMetaData column);
private string ColumnDefinition(IColumnMetaData column, string columnType) { return(string.Format("{0} {1} {2}", this.DbLanguage.Quote(column.ColumnName), columnType, this.GetNullDefinition(column)).Trim()); }
public override string StringColumn(IColumnMetaData column) { return(this.ColumnDefinition(column, "TEXT")); }
public virtual string CreateColumnDefinition(IColumnMetaData column) { return(ColumnLanguage.Create(column)); }