使用Code First数据库创建,如何指定DateTime属性来获取postgres timestampz数据类型而不是默认时间戳? 我将所有日期存储为UTC,但是对于DateTime.Kind未指定的linq查询存在问题。我相信时间戳应该解决这个问题。
以下代码示例尝试使用“Column”属性,这会导致错误(DateTime不兼容)。
我正在使用npgsql v3.1.7和EntityFramework6.Npgsql v 3.1.1
[Column(TypeName="timestampz")]
public DateTime CreatedByDate { get; set; }
[Column(TypeName="NpgsqlDateTime")]
public DateTime CreatedByDate { get; set; }
答案 0 :(得分:0)
您可以使用命名空间TimeStamp
中的System.ComponentModel.DataAnnotations
属性让.NET在您的实体所代表的数据库表中创建一个不可为空的Timestamp列。
[Timestamp]
public Byte[] TimeStamp { get; set; }
代码首先只允许每个实体使用一个Timestamp属性。