如何使用FluentMigrator设置ROWVERSION / TIMESTAMP数据类型列?

时间:2012-05-30 19:27:08

标签: .net sql nhibernate fluent-nhibernate fluent-migrator

我正在尝试在SQL Server表上使用ROWVERSION(或TIMESTAMP)数据类型进行乐观并发控制。

我的表是使用FluentMigrator设置的,我不知道如何获取我需要的数据类型。根据{{​​3}},不可废除的ROWVERSION 列在语义上等同于二进制(8)列; 可为空ROWVERSION 数据类型等同于 varbinary(8)

这是一个例子,尽可能接近......

public override void Up()
    {
        Create.Table("Test")
            .WithColumn("Id").AsInt32().Identity().PrimaryKey()
            .WithColumn("Description").AsAnsiString(255)
            .WithColumn("RowVersion").AsBinary(8).NotNullable(); 
    }

.WithColumn("RowVersion").AsBinary(8).NotNullable(); 是我无法理解的行...没有 .AsRowversion {{1} } 选项。

提前致谢!

1 个答案:

答案 0 :(得分:11)

哇!事情如何变得如此简单以至于我看上去明显......

.WithColumn("Version").AsCustom("rowversion").NotNullable();