无法将值NULL插入列'EntryDate',表'eApps.Logs.dbo.Logs';列不允许空值。 INSERT失败

时间:2017-07-05 20:37:35

标签: entity-framework asp.net-web-api

我收到了这个错误:

  

无法将值NULL插入“EntryDate”列,表'eApps.Logs.dbo.Logs';列不允许空值。 INSERT失败。

我有一个标准的添加功能到EF 6

    public Logs AddLog(Logs p)
    {
        Logs.Add(p);
        SaveChanges();
        return p;
    }

我已将班级中的字段定义为:

    [DatabaseGenerated(DatabaseGeneratedOption.Computed)]
    public DateTime EntryDate { get; set; }

我应该在控制器中填充此字段吗?

2 个答案:

答案 0 :(得分:1)

请注意,表中的列record_xml_property不允许NULL。因此,您必须确保对象EntryDate获得有效日期。其他选项可能是更改表模式并修改p列以接受NULL。

答案 1 :(得分:0)

我在SQL Server的EntryDate字段中添加了一个约束,将此字段默认为GETDATE()