- 修复 Sqlite 映射 TimeSpan 问题;

This commit is contained in:
2881099 2022-10-27 21:39:50 +08:00
parent 98c1aa2f34
commit 2d2e3640c9
3 changed files with 6 additions and 6 deletions

View File

@ -335,7 +335,7 @@ namespace FreeSql.Tests.Sqlite
ShortNullable = short.MinValue, ShortNullable = short.MinValue,
String = "我是中国人string'\\?!@#$%^&*()_+{}}{~?><<>", String = "我是中国人string'\\?!@#$%^&*()_+{}}{~?><<>",
Char = 'X', Char = 'X',
TimeSpan = TimeSpan.FromSeconds(999), TimeSpan = TimeSpan.FromMilliseconds(999500),
TimeSpanNullable = TimeSpan.FromSeconds(60), TimeSpanNullable = TimeSpan.FromSeconds(60),
UInt = uint.MaxValue, UInt = uint.MaxValue,
UIntNullable = uint.MinValue, UIntNullable = uint.MinValue,

View File

@ -33,7 +33,7 @@ namespace FreeSql.Sqlite
{ typeof(float).FullName, CsToDb.New(DbType.Single, "float","float NOT NULL", false, false, 0) },{ typeof(float?).FullName, CsToDb.New(DbType.Single, "float","float", false, true, null) }, { typeof(float).FullName, CsToDb.New(DbType.Single, "float","float NOT NULL", false, false, 0) },{ typeof(float?).FullName, CsToDb.New(DbType.Single, "float","float", false, true, null) },
{ typeof(decimal).FullName, CsToDb.New(DbType.Decimal, "decimal", "decimal(10,2) NOT NULL", false, false, 0) },{ typeof(decimal?).FullName, CsToDb.New(DbType.Decimal, "decimal", "decimal(10,2)", false, true, null) }, { typeof(decimal).FullName, CsToDb.New(DbType.Decimal, "decimal", "decimal(10,2) NOT NULL", false, false, 0) },{ typeof(decimal?).FullName, CsToDb.New(DbType.Decimal, "decimal", "decimal(10,2)", false, true, null) },
{ typeof(TimeSpan).FullName, CsToDb.New(DbType.Time, "bigint","bigint NOT NULL", false, false, 0) },{ typeof(TimeSpan?).FullName, CsToDb.New(DbType.Time, "bigint", "bigint",false, true, null) }, { typeof(TimeSpan).FullName, CsToDb.New(DbType.Time, "decimal","decimal(18,3) NOT NULL", false, false, 0) },{ typeof(TimeSpan?).FullName, CsToDb.New(DbType.Time, "decimal", "decimal(18,3)",false, true, null) },
{ typeof(DateTime).FullName, CsToDb.New(DbType.DateTime, "datetime", "datetime NOT NULL", false, false, new DateTime(1970,1,1)) },{ typeof(DateTime?).FullName, CsToDb.New(DbType.DateTime, "datetime", "datetime", false, true, null) }, { typeof(DateTime).FullName, CsToDb.New(DbType.DateTime, "datetime", "datetime NOT NULL", false, false, new DateTime(1970,1,1)) },{ typeof(DateTime?).FullName, CsToDb.New(DbType.DateTime, "datetime", "datetime", false, true, null) },
{ typeof(byte[]).FullName, CsToDb.New(DbType.Binary, "blob", "blob", false, null, new byte[0]) }, { typeof(byte[]).FullName, CsToDb.New(DbType.Binary, "blob", "blob", false, null, new byte[0]) },

View File

@ -33,8 +33,8 @@ namespace FreeSql.Sqlite
break; break;
case DbType.Time: case DbType.Time:
if (value == null) value = null; if (value == null) value = null;
else value = ((TimeSpan)value).Ticks / 10000; else value = ((TimeSpan)value).TotalSeconds;
dbtype = DbType.Int64; dbtype = DbType.Decimal;
break; break;
} }
#if MicrosoftData #if MicrosoftData
@ -65,8 +65,8 @@ namespace FreeSql.Sqlite
break; break;
case DbType.Time: case DbType.Time:
if (value == null) value = null; if (value == null) value = null;
else value = ((TimeSpan)value).Ticks / 10000; else value = ((TimeSpan)value).TotalSeconds;
dbtype = DbType.Int64; dbtype = DbType.Decimal;
break; break;
} }
} }