繁体   English   中英

EF CORE 日期时间随时间 0 一起保存

[英]EF CORE datetime saves with time 0

早上好,我已经使用 DB-scaffold 导入了我的数据库表。 在一张表中,我有一个日期时间字段,我需要在其中添加一个 DateTime.Now 对象,但是,当我将更改保存到数据库时,保存的日期是正确的,但时间是 00:00:00.000。

波纹管我的模型的摘录

public partial class Vehicle
{
    // Some other properties....
    public DateTime LastImport { get; set; }
}

数据库上下文

public partial class DBContext : DbContext
{
    // Some other properties....
    public virtual DbSet<Vehicle> Vehicles { get; set; }
    
    
    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        // Some other model builders.
        modelBuilder.Entity<Vehicles>(entity =>
        {
            // Some other properties
            entity.Property(e => e.LastImport)
                .HasColumnType("datetime")
                .HasColumnName("last_import");

        });

        OnModelCreatingPartial(modelBuilder);
    }
}

以及更新方法。

private static void UpdateVehicle(IEnumerable<ElencoVettureResponse> vehicles, DbContext ctx)
{
    foreach (var vehicle in vehicles)
    {
        var vehicleRecord = new Vehicle()
        {
            // Setting some other properties
            LastImport = DateTime.Now
        };

        ctx.Add(vehicleRecord);
    }

    ctx.SaveChanges();
}

表创建脚本:

CREATE TABLE [dbo].[Vehicle](
/* SOME OTHER FIELDS */
[last_import] [datetime] NOT NULL

我的数据库中的字段是这样填充的:

数据库截图。

我希望字段具有如下值:“ 2020-11-17 11:30:19.000

我需要做什么? 谢谢你。

var now = DateTime.Now;
var date = new DateTime(now.Year, now.Month, now.Day,
                        now.Hour, now.Minute, now.Second);

 LastImport = date;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM