在Entityframe工作6.1中创建默认值

时间:2014-07-21 04:57:06

标签: c# entity-framework-6

我首先使用代码创建表,我有一个名为CreatedDate的列,我希望此列的默认值为GETDATE()。

但我不想这样做是在迁移脚本中,如下所示

AddColumn("Agents", "CreatedDate", n => n.DateTime(nullable: false, defaultValueSql: "GETDATE()"));

如何在Mapping或模型类中执行此操作?

1 个答案:

答案 0 :(得分:1)

您需要在POCO中设置默认值,您可以在property backing field或构造函数中设置它,如下所示。

1。构造

public class Agent
{
    public Agent()
    {
        CreatedDate = DateTime.Now;
    }

    public DateTime CreatedDate { get; set; }
}

2。财产支持领域

public class Agent
{
    private DateTime _createdDate;
    public DateTime Date
    {
        get { return _createdDate == default(DateTime) ? DateTime.Now : _createdDate; }
        set { _createdDate = value; }
    }
}