Skip to content

Commit 68fbecf

Browse files
committed
Add serializers for DateOnly and TimeOnly
1 parent d61f9d6 commit 68fbecf

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

SQLiteSharp/Orm.cs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -252,6 +252,18 @@ private void AddDefaultTypeSerializers() {
252252
serialize: (DateTime clr) => clr.Ticks,
253253
deserialize: (SqliteValue sqlite, Type clrType) => new DateTime(sqlite.CastInteger)
254254
);
255+
#if NET6_0_OR_GREATER
256+
RegisterType<DateOnly>(
257+
SqliteType.Integer,
258+
serialize: (DateOnly clr) => clr.ToDateTime(TimeOnly.MinValue).Ticks,
259+
deserialize: (SqliteValue sqlite, Type clrType) => DateOnly.FromDateTime(new DateTime(sqlite.CastInteger))
260+
);
261+
RegisterType<TimeOnly>(
262+
SqliteType.Integer,
263+
serialize: (TimeOnly clr) => clr.Ticks,
264+
deserialize: (SqliteValue sqlite, Type clrType) => new TimeOnly(sqlite.CastInteger)
265+
);
266+
#endif
255267
RegisterType<Uri>(
256268
SqliteType.Text,
257269
serialize: (Uri clr) => clr.AbsoluteUri,

0 commit comments

Comments
 (0)