使用Linq To Sql的插入操作中的SQL GETDATE()

时间:2011-06-23 05:38:21

标签: sql-server linq-to-sql datetime

说我有下表:

create table T (
    ID int not null primary key,
    Name varchar(10) not null,
    CreatedAt datetime not null default GETDATE(),
    UpdatedAt datetime not null default GETDATE()
)

并希望与Linq 2 Sql一起使用。它完美地生成类型安全类,CreatedAt和UpdatedAt属性都不可为空。现在我想插入一个新条目,并希望它们都由来自Sql Server的值填充,而不是DateTime.Now可能不同的值。有没有办法以某种方式将null发送到Sql Server而不使属性可以为空?此外,我不想跟随this solution,因为它需要额外的网络旅行。使用好的旧SQL非常容易 - 只需在insert语句中省略CreatedAt / UpdatedAt列,你就可以了,但我对Linq 2 Sql的选择是什么?

1 个答案:

答案 0 :(得分:1)

您可以查看此链接吗?有一个名为IsDbGenerated的属性,可以使用LINQ分部类进行注释。

http://msdn.microsoft.com/en-us/library/system.data.linq.mapping.columnattribute.isdbgenerated.aspx#Y456