有没有一种方法可以将DateTimeOffset
属性映射到SQL Server的datetime
列,假设你不能更改任何一方,也就是说,属性和列必须保持这些日期类型?
我知道最简单的方法是使它们匹配,但想知道是否有一种方法可以解决这个问题。我研究了自定义映射,但似乎我必须自己映射所有的列,而不仅仅是DateTimeOffset
属性。
我尝试了:
modelBuilder.Entity<Customer>().Property(c => c.LastModifiedOn).HasColumnType("datetime");
但是那样会抛出“指定的成员映射无效”错误。
我希望能够将UtcDateTime DateTimeOffset
属性值存储在数据库中,读取时将DateTimeOffset
转换为UTC时间(即偏移量为零)。
defaultValueSql: "GETUTCDATE()"
。 - Suamere