/
dev-npgsql
/
npgsql
Обзор
Документация
Войти
/
dev-npgsql
/
npgsql
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
v9.0.5
src/Npgsql/Replication/PgDateTime.cs
16 строк
611 B
Nino Floris
Handler rework (#5123)
26 сен 2023, 00:08
Не верифицирован
26 сен 2023, 00:08
0b7aecb
Код
Авторство
О чём код?
using System; namespace Npgsql.Replication; static class PgDateTime { const long PostgresTimestampOffsetTicks = 630822816000000000L; public static DateTime DecodeTimestamp(long value, DateTimeKind kind) => new(value * 10 + PostgresTimestampOffsetTicks, kind); public static long EncodeTimestamp(DateTime value) // Rounding here would cause problems because we would round up DateTime.MaxValue // which would make it impossible to retrieve it back from the database, so we just drop the additional precision => (value.Ticks - PostgresTimestampOffsetTicks) / 10; }