【发布时间】:2011-02-21 23:26:58
【问题描述】:
我的数据库 (MS SQL 2008) 中有一个表,其中列SYSUTCDATETIME () 的默认值。
想法是在创建新记录后立即自动添加日期和时间。
我使用 EF4 创建了我的概念模型,并在 INSERT MODE 下创建了一个带有 DetailsView 控件的 ASP.PAGE。
我的问题:
当我创建一个新记录时。 EF 无法插入实际的日期和时间值,但它会插入此值 0001-01-01 00:00:00.00。
我想 EF 不能使用我的数据库中定义的 SYSUTCDATETIME ()
知道如何解决吗?谢谢
这是我的 SQL 脚本
CREATE TABLE dbo.CmsAdvertisers
(
AdvertiserId int NOT NULL IDENTITY
CONSTRAINT PK_CmsAdvertisers_AdvertiserId PRIMARY KEY,
DateCreated dateTime2(2) NOT NULL
CONSTRAINT DF_CmsAdvertisers_DateCreated DEFAULT sysutcdatetime (),
ReferenceAdvertiser varchar(64) NOT NULL,
NoteInternal nvarchar(256) NOT NULL
CONSTRAINT DF_CmsAdvertisers_NoteInternal DEFAULT ''
);
我的临时解决方案: 请大家帮我解决这个问题
e.Values["DateCreated"] = DateTime.UtcNow;
更多信息在这里:
http://msdn.microsoft.com/en-us/library/bb387157.aspx
How to use the default Entity Framework and default date values
【问题讨论】:
标签: c# tsql entity-framework entity-framework-4