Можно ли сделать последовательность индивидуальной для набора значений свойств? - PullRequest
0 голосов
/ 14 июля 2020

Модель:

public class Document
{
public Guid Id {get;set;}
public string Prop1 {get;set;}
public string Prop2 {get;set;}
public string Prop3 {get;set;}
public int DocumentVersion  {get;set;}
}

Используя только построитель модели ядра ef, как в этом примере

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    modelBuilder.HasSequence<int>("DocumentVersions");

    modelBuilder.Entity<Document>()
        .Property(o => o.DocumentVersion)
        .HasDefaultValueSql("NEXT VALUE FOR shared.DocumentVersions");
}

, можно ли настроить поле автоинкремента (DocumentVersion), которое индивидуально повторяется в зависимости от значений Prop1, Prop2, Prop3? Каждый набор значений свойств должен иметь свою собственную последовательность.

Например:

Prop1 Prop2 Prop3 DocumentVersion
1     1     1     1
1     1     1     2
1     2     1     1
1     2     3     1
1     1     1     3
1     2     1     2
  1. Решение хранимой процедуры для генерации DocumentVersion не подходит .
  2. Pure C# Решение для создания DocumentVersion не подходит.
...