将DateTime保存到sql而不是毫秒

时间:2015-06-08 07:37:31

标签: entity-framework

如何在没有毫秒的情况下将日期时间属性保存在EF中?

我这样保存:

[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "  
{0:MM/dd/yyyy}")]
[Column(TypeName = "datetime2")]
public DateTime ProcessingDateTime { get; set; }

我用毫秒获得数据? 有任何想法吗? TX 帐簿

1 个答案:

答案 0 :(得分:1)

对于那些遇到此问题的人,可以通过一种不可知的方式来解决此问题,该方法不可知于 EF CORE

1-转到OnModelCreating

2-在属性中添加扩展方法HasConversion,该方法将从读取和写入的日期时间中删除毫秒数

builder.Entity<Table>().Property(u => u.Date).HasConversion(dt => dt, dt => dt.AddTicks(-dt.Ticks % TimeSpan.TicksPerSecond));