示例#1
0
        public override byte ValidatePrecision(DbColumnDefinition columnDefinition)
        {
            if (IsNumericType(columnDefinition.Name) && columnDefinition.Precision == 0)
            {
                return(10);
            }

            return(columnDefinition.Precision);
        }
示例#2
0
 public override bool IsValid(DbColumnDefinition columnDefinition)
 {
     switch (columnDefinition.TypeName.ToLowerInvariant())
     {
     case "integer":
     case "numeric":
     case "blob":
     case "datetime":
     case "text":
         return(true);
     }
     return(false);
 }
示例#3
0
        public override (byte precision, byte scale) ValidatePrecisionAndScale(DbColumnDefinition columnDefinition)
        {
            var precision = columnDefinition.Precision;
            var scale     = columnDefinition.Scale;

            if (IsNumericType(columnDefinition.Name) && precision == 0)
            {
                precision = 10;
                scale     = 0;
            }

            return(precision, scale);
        }
示例#4
0
 public override bool IsValid(DbColumnDefinition columnDefinition)
 {
     switch (columnDefinition.TypeName.ToLowerInvariant())
     {
     case "int":
     case "int16":
     case "int24":
     case "int32":
     case "int64":
     case "uint16":
     case "uint24":
     case "uint32":
     case "uint64":
     case "bit":
     case "integer":
     case "datetime":
     case "numeric":
     case "decimal":
     case "dec":
     case "fixed":
     case "tinyint":
     case "mediumint":
     case "bigint":
     case "real":
     case "double":
     case "float":
     case "serial":
     case "smallint":
     case "varchar":
     case "char":
     case "text":
     case "longtext":
     case "tinytext":
     case "mediumtext":
     case "nchar":
     case "nvarchar":
     case "enum":
     case "set":
     case "longblob":
     case "tinyblob":
     case "mediumblob":
     case "binary":
     case "varbinary":
     case "year":
     case "time":
     case "timestamp":
         return(true);
     }
     return(false);
 }
示例#5
0
 public override bool IsValid(DbColumnDefinition columnDefinition)
 {
     switch (columnDefinition.TypeName.ToLowerInvariant())
     {
     case "bigint":
     case "binary":
     case "bit":
     case "char":
     case "date":
     case "datetime":
     case "datetime2":
     case "datetimeoffset":
     case "decimal":
     case "float":
     case "int":
     case "money":
     case "nchar":
     case "numeric":
     case "nvarchar":
     case "real":
     case "smalldatetime":
     case "smallint":
     case "smallmoney":
     case "sql_variant":
     case "variant":
     case "time":
     case "timestamp":
     case "tinyint":
     case "uniqueidentifier":
     case "varbinary":
     case "varchar":
     case "xml":
         return(true);
     }
     return(false);
 }
示例#6
0
 public override (byte precision, byte scale) ValidatePrecisionAndScale(DbColumnDefinition columnDefinition)
 {
     return(columnDefinition.Precision, columnDefinition.Scale);
 }
示例#7
0
 public override byte ValidatePrecision(DbColumnDefinition columnDefinition)
 {
     return(columnDefinition.Precision);
 }
示例#8
0
 public override bool ValidateIsReadonly(DbColumnDefinition columnDefinition)
 {
     return(false);
 }
示例#9
0
 public override bool ValidateIsReadonly(DbColumnDefinition columnDefinition)
 {
     return(columnDefinition.TypeName.ToLowerInvariant() == "timestamp");
 }
 public FieldInfoViewModel(DbColumnDefinition fieldInfo)
 {
     _fieldInfo = fieldInfo;
 }