EF Core에서 Postgres 사용 시 발생하는 Cannot write DateTime with Kind=UTC to PostgreSQL type 'timestamp without time zone' 에러를 해결하는 방법에 대해 알아봅니다.
현상
public class SomeClass
{
[Column("created_on")]
public DateTime? created_on { get; set; }
}
위와 같이 nullable DateTime 값을 수정하고자 할 때 Cannot write DateTime with Kind=UTC to PostgreSQL type 'timestamp without time zone' 오류가 발생.
수정
직접 setter를 구현해 명시적으로 DateTime.Kind를 설정합니다.
public class SomeClass{
[Column("created_on")]
private DateTime? _created_on
public DateTime? created_on
{
get
{
return this._created_on;
}
set
{
this._created_on = DateTime.SpecifyKind(value, DateTimeKind.Utc);
}
}
}
위와 같이 수정하면 정상적으로 nullable DateTime 컬럼이 수정됩니다.
반응형
'Programming > C#' 카테고리의 다른 글
[C#] LINQ와 람다(Lambda)식 (2) | 2024.03.08 |
---|---|
[C#] Entity Framework vs Dapper (0) | 2022.12.28 |
[MongoDB] MongoDB Driver Upgrade 1.x ⇒ 2.x (0) | 2022.09.05 |
[C#] Entity Framework를 사용해 join 쿼리문을 수행하는 방법. (0) | 2022.07.26 |
[C#] EntityFramework로 MySQL / MariaDB에 연결하기. (0) | 2022.07.21 |