基本上我想要这样的东西:
+----+------+-----+
| Id | Name | Ver |
+----+------+-----+
| 1 | Foo | 1 |
| 2 | Foo | 2 |
| 3 | Bar | 1 |
| 4 | Baz | 1 |
+----+------+-----+
每个对象都分配了版本。版本号由DB自动递增。当然,对于每个新版本化对象,版本号需要重置为1.
我试过了:
u.HasKey(x => x.Id);
u.HasKey(x => new { x.Name, x.Ver } );
u.Property(x => x.Ver)
.ValueGeneratedOnAdd();
和
u.HasKey(x => new { x.Name, x.Ver, x.Id } );
及其变体。
似乎什么都没有给我我想要的东西。每当我添加一个新的命名条目时,Ver
都会不断递增。
答案 0 :(得分:0)
可能是一个将版本设置为现有行的Count(*)的触发器?此外,在版本控制时...版本号是否真的必须遵循?如果存在差距,我认为这不应该是一个问题。如果您想知道某行是否具有更高版本或更早版本,只需检查版本号大于或小于的行。