public static Type ConvertToClrType(ModelSystemDataType value) { switch (value) { case ModelSystemDataType.None: break; case ModelSystemDataType.BigInt: return(typeof(long)); case ModelSystemDataType.Int: return(typeof(int)); case ModelSystemDataType.SmallInt: return(typeof(short)); case ModelSystemDataType.TinyInt: return(typeof(byte)); case ModelSystemDataType.Bit: return(typeof(bool)); case ModelSystemDataType.Decimal: return(typeof(decimal)); case ModelSystemDataType.Numeric: #warning double single return(typeof(double)); case ModelSystemDataType.Money: return(typeof(decimal)); case ModelSystemDataType.SmallMoney: return(typeof(decimal)); case ModelSystemDataType.Float: return(typeof(float)); case ModelSystemDataType.Real: return(typeof(double)); case ModelSystemDataType.DateTime: return(typeof(DateTime)); case ModelSystemDataType.SmallDateTime: return(typeof(DateTime)); case ModelSystemDataType.Char: return(typeof(string)); case ModelSystemDataType.VarChar: return(typeof(string)); case ModelSystemDataType.Text: return(typeof(string)); case ModelSystemDataType.NChar: return(typeof(string)); case ModelSystemDataType.NVarChar: return(typeof(string)); case ModelSystemDataType.NText: return(typeof(string)); case ModelSystemDataType.Binary: return(typeof(byte[])); case ModelSystemDataType.VarBinary: return(typeof(byte[])); case ModelSystemDataType.Image: return(typeof(byte[])); case ModelSystemDataType.Cursor: return(typeof(object)); case ModelSystemDataType.Sql_Variant: return(typeof(object)); case ModelSystemDataType.Table: return(typeof(object)); // ?? case ModelSystemDataType.Timestamp: return(typeof(byte[])); case ModelSystemDataType.UniqueIdentifier: return(typeof(Guid)); case ModelSystemDataType.Date: return(typeof(DateTime)); case ModelSystemDataType.Time: return(typeof(TimeSpan)); case ModelSystemDataType.DateTime2: return(typeof(DateTime)); case ModelSystemDataType.DateTimeOffset: return(typeof(DateTimeOffset)); case ModelSystemDataType.Rowversion: return(typeof(byte[])); default: break; } return(null); }
public static string GetCondensed(SqlName name, ModelSystemDataType systemDataType, short?maxLength, byte?scale, byte?precision) { // TODO: this.Scale switch (systemDataType) { case ModelSystemDataType.None: break; case ModelSystemDataType.BigInt: return("bigint"); case ModelSystemDataType.Int: return("int"); case ModelSystemDataType.SmallInt: return("smallInt"); case ModelSystemDataType.TinyInt: return("tinyInt"); case ModelSystemDataType.Bit: return("bit"); case ModelSystemDataType.Decimal: return("decimal"); case ModelSystemDataType.Numeric: return("numeric"); case ModelSystemDataType.Money: return("money"); case ModelSystemDataType.SmallMoney: return("smallmoney"); case ModelSystemDataType.Float: return("float"); case ModelSystemDataType.Real: return("real"); case ModelSystemDataType.DateTime: return("datetime"); case ModelSystemDataType.SmallDateTime: return("smalldatetime"); case ModelSystemDataType.Char: return("char(" + (maxLength.GetValueOrDefault().ToString()) + ")"); case ModelSystemDataType.VarChar: return("varchar(" + (((maxLength.GetValueOrDefault(-1) <= 0) || (maxLength.GetValueOrDefault(-1) >= 8000)) ? "max" : maxLength.Value.ToString()) + ")"); case ModelSystemDataType.Text: return("text"); case ModelSystemDataType.NChar: return("nchar(" + (maxLength.GetValueOrDefault().ToString()) + ")"); case ModelSystemDataType.NVarChar: return("nvarchar(" + (((maxLength.GetValueOrDefault(-1) <= 0) || (maxLength.GetValueOrDefault(-1) >= 8000)) ? "max" : maxLength.Value.ToString()) + ")"); case ModelSystemDataType.NText: return("ntext"); case ModelSystemDataType.Binary: return("binary"); case ModelSystemDataType.VarBinary: return("varbinary"); case ModelSystemDataType.Image: return("image"); case ModelSystemDataType.Cursor: return("cursor"); case ModelSystemDataType.Sql_Variant: return("sql_variant"); case ModelSystemDataType.Table: return("table"); // ?? case ModelSystemDataType.Timestamp: return("timestamp"); case ModelSystemDataType.UniqueIdentifier: return("uniqueidentifier"); case ModelSystemDataType.Date: return("date"); case ModelSystemDataType.Time: return("time"); case ModelSystemDataType.DateTime2: return("datetime2"); case ModelSystemDataType.DateTimeOffset: return("datetimeoffset"); case ModelSystemDataType.Rowversion: return("rowversion"); default: break; } return(name.GetQFullName("[", 2)); }