Существуют в основном различные обходные пути, самым простым будет изменение метода OnModelCreating
для использования одной из свободно используемых функций API HasComputedColumnSql
в вычисляемом столбце.
Code First Approach
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Employee>()
.Property(e => e.EmployeeNo)
.HasComputedColumnSql("[PreFix]+ RIGHT('0000000' + CAST(Id AS VARCHAR(7)), 7)");
}
Первый подход к базе данных
При первом подходе к базе данных вы все равно можете определить логические вычисления c при создании таблицы и использовать следующую модификацию в сторона контекста ядра структуры сущности.
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Contact>()
.Property(p => p.EmployeeNo)
.ValueGeneratedOnAdd();
}