实体框架(ET)中的Datetime列的默认值

时间:2011-12-16 14:14:01

标签: entity-framework-4.1

有谁能告诉我,如何使用Entity Framework中的默认值作为日期时间列?

3 个答案:

答案 0 :(得分:1)

EF设计器对配置数据时间的默认值没有任何有用的支持。最好的方法是在实体的构造函数中初始化默认值。每个实体都是部分类,因此您可以创建自己的部分部分并使用:

public partial class YourEntity
{
    public YourEntity()
    {
        YourDateProperty = DateTime.Now;
    }
}

同样适用于仅代码映射,但在这种情况下,您不需要部分部分,因为您可以直接在手动创建的实体类中定义构造函数。

答案 1 :(得分:0)

考虑在数据库中指定默认值(列属性)。

答案 2 :(得分:0)

如果您只需要使用当前时间作为默认日期时间值,则可以使用命名空间TimeStamp中的System.ComponentModel.DataAnnotations属性让.NET在数据库表中创建一个不可为空的Timestamp列你的实体所代表的。

[Timestamp]
public Byte[] TimeStamp { get; set; }

代码首先只允许每个实体使用一个Timestamp属性。