2012-03-06 47 views
6

我正在開發基於實體框架的應用程序。我正在使用模型優先的方法。我想處理併發問題。正如許多文章中寫到的,我將通過將併發模式固定在時間戳字段上來實現。目前我面臨的問題 - 我不能添加類型時間戳的字段(列)。我如何在模型中做到這一點?實體框架模型第一次時間戳

至於這裏寫的:

http://social.msdn.microsoft.com/Forums/is/adodotnetentityframework/thread/1ed8d1e4-9d78-4593-9b10-33e033837af8 \

我試圖installiing實體設計數據庫生成電源組,但我仍然看不出有任何的可能性已經從模型生成的時間戳(我甚至試過手動設置它在edmx文件中,但仍然沒有收到生成的數據庫中的時間戳fcolumn)。

請幫忙。

回答

2

我認爲數據庫類型時間戳映射到EF中的二進制屬性類型。

我的模型的時間戳列是長度爲8的固定長度爲Binary的類型,StoreGenratedPattern是Computed。

編輯:其實不可能不改變T4模板這裏說明:Entity Framework timestamp Generate Database issue

0

EF 6.1,我有這樣的:

public partial class DepartmentEFEntity 
{ 

    Guid DepartmentUUID { get; set; } 

    public byte[] TheVersionProperty { get; set; } 
} 

然後:

 modelBuilder.Entity<DepartmentEFEntity>().Property(o => o.TheVersionProperty).HasColumnType("timestamp").HasDatabaseGeneratedOption(DatabaseGeneratedOption.Computed).IsRowVersion(); 

當我的腳本出表,我得到這個:

CREATE TABLE [dbo].[Department](
    [DepartmentUUID] [uniqueidentifier] NOT NULL, 
    [TheVersionProperty] [timestamp] NOT NULL 
    )