Невозможно записать DateTime с Kind=UTC в тип PostgreSQL «метка времени без часового пояса», несмотря на то, что для тип ⇐ C#
Невозможно записать DateTime с Kind=UTC в тип PostgreSQL «метка времени без часового пояса», несмотря на то, что для тип
linqToDb + C# + база данных Postgres.
Я создаю DateTime и устанавливаю вид:
DateTime dt = someDate.SpecifyKind(DateTimeKind.Local) и использовать объект для некоторой таблицы
[Table("my_table", Schema = "myScheme")] публичный класс TableEntity ... [Column("dt", DbType = "метка времени без часового пояса", DataType = DataType.DateTime)] общественный DateTime DT {получить; набор; }... и в коде я задаю значение объекта
tableEntity.DT = dt; //В отладчике я вижу, что здесь Kind для tableEntity.DT — это DateTimeKind.Local Но в следующей строке я запускаю команду LinqToDb:
dataConn.InsertWithInt32IdentityAsync(loanContractEntity); и каким-то образом DateTimeKind изменился на UTC, а затем выдал исключение: Невозможно записать DateTime с Kind=UTC в тип PostgreSQL «метка времени без часового пояса», рассмотрите возможность использования «метки времени с часовым поясом». Обратите внимание, что невозможно смешивать DateTimes с разными типами в массиве/диапазоне. См. переключатель AppContext Npgsql.EnableLegacyTimestampBehavior, чтобы включить устаревшее поведение.
Но мне нужно использовать «временную метку без часового пояса».
Как записать DateTime с помощью LinqToDB в поле БД «метка времени без часового пояса»?
PS: Если я использую nullAble DateTime? в определении сущности - все работает нормально.
публичный DateTime? ДТ {получить; набор; } Спасибо!
linqToDb + C# + база данных Postgres.
Я создаю DateTime и устанавливаю вид:
DateTime dt = someDate.SpecifyKind(DateTimeKind.Local) и использовать объект для некоторой таблицы
[Table("my_table", Schema = "myScheme")] публичный класс TableEntity ... [Column("dt", DbType = "метка времени без часового пояса", DataType = DataType.DateTime)] общественный DateTime DT {получить; набор; }... и в коде я задаю значение объекта
tableEntity.DT = dt; //В отладчике я вижу, что здесь Kind для tableEntity.DT — это DateTimeKind.Local Но в следующей строке я запускаю команду LinqToDb:
dataConn.InsertWithInt32IdentityAsync(loanContractEntity); и каким-то образом DateTimeKind изменился на UTC, а затем выдал исключение: Невозможно записать DateTime с Kind=UTC в тип PostgreSQL «метка времени без часового пояса», рассмотрите возможность использования «метки времени с часовым поясом». Обратите внимание, что невозможно смешивать DateTimes с разными типами в массиве/диапазоне. См. переключатель AppContext Npgsql.EnableLegacyTimestampBehavior, чтобы включить устаревшее поведение.
Но мне нужно использовать «временную метку без часового пояса».
Как записать DateTime с помощью LinqToDB в поле БД «метка времени без часового пояса»?
PS: Если я использую nullAble DateTime? в определении сущности - все работает нормально.
публичный DateTime? ДТ {получить; набор; } Спасибо!
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение