Entity Framework Core 2.0: cómo configurar una clase base abstracta una vez

Tengo un modelo base:

public abstract class Status
{
     public string updateUserName { get; set; }
}

Luego, un modelo que extiende el modelo base definido anteriormente:

public class Item : Status
{
     public int Id { get; set; }
     public string Description { get; set; }
}

Luego he definido clases de configuración para cada uno:

public class ItemConfiguration : IEntityTypeConfiguration<Item>
{
    public void Configure(EntityTypeBuilder<Item> builder)
    {
        builder.ToTable("Item", "dbo").HasKey(c => c.Id);
        builder.Property(c => c.Description).IsRequired().HasMaxLength(100);
    }
}

public class StatusConfiguration : IEntityTypeConfiguration<Status>
{
    public void Configure(EntityTypeBuilder<Status> builder)
    {
        builder.Property(c => c.updateUserName).IsRequired().HasMaxLength(50);
    }

Ahora, tengo la siguiente clase de contexto:

public class TestDbContext : DbContext
{
    public TestDbContext(DbContextOptions<TestDbContext> options) : base(options)
    {
    }

    public DbSet<Item> Item { get; set; }

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.ApplyConfiguration(new ItemConfiguration());
    }
}

Estoy tratando de descubrir cómo aplicar las configuraciones del modelo de Estado definidas en la clase StatusConfiguration a todos los modelos que se extienden a él (solo uno en este ejemplo: Elemento). Me gustaría evitar definir la misma configuración del modelo de estado cada vez que se usa. El modelo de estado será esencialmente metadatos asociados con cada registro de elemento (es decir, una tabla de elemento en la base de datos que contiene todas las propiedades definidas en ambos modelos; nada más y nada menos).

Por ejemplo, mi implementación actual es la siguiente clase ItemConfiguration sin usar la clase StatusConfiguration:

public class ItemConfiguration : IEntityTypeConfiguration<Item>
{
    public void Configure(EntityTypeBuilder<Item> builder)
    {
        builder.ToTable("Item", "dbo").HasKey(c => c.Id);
        builder.Property(c => c.Description).IsRequired().HasMaxLength(100);
        builder.Property(c => c.updateUserName).IsRequired().HasMaxLength(50);
    }
}

Esa implementación actual funciona correctamente y migra a la base de datos según lo previsto. Simplemente estoy buscando una forma más manejable en el futuro.

Mi suposición es que podría extender la clase ItemConfiguration para incluir la clase StatusConfiguration pero no puedo encontrar un ejemplo de ese método en línea. ¿Espero que alguien con un poco más de experiencia pueda señalarme en la dirección correcta?

Avíseme si sería útil información adicional.

Respuestas a la pregunta(1)

Su respuesta a la pregunta